Para interface grafica podria ser web.
No se si java use gtk.
He usado Monodevelo para programar usando c# y GTK, corre en linux y windows. La malo que he encontrado respecto a GTK en Windows es que no se ve esteticamente como deberia, algunos controles se los ve muy "cuadrados".
Por eso siempre que es posible he usado interfaces web para las aplicaciones, se igual sin importar el sistema operativo.
Actualmente uso Vala, tambien se puede compilar para windows y Linux con la ventaja que no necesita un framework o maquina virtual como java o c#, lo que se obtiene es un binario listo para correr.