La plej longa rivero de la insulo estas la 600 km longa rivero Solo. La rivero ekas de sia fonto en centra Java ĉe la vulkano Lawu, poste fluas norden kaj orienten al sia enfluejo en la Java Maro proksime de la urbo Surabaya. Aliaj gravaj riveroj estas Brantas, Citarum, Cimanuk kaj Serayu.
Rivero Solo