Tomaría la sugerencia de Jon y usaría Ant, ya que esta es una tarea bastante compleja.
Sin embargo, si está decidido a obtenerlo todo en una línea en la Terminal, en Linux podría usar el comando find. Pero no lo recomiendo en absoluto, ya que no hay garantía de que, por ejemplo, Foo.java se compile después de Bar.java, aunque Foo
usa Bar
. Un ejemplo sería:
find . -type f -name "*.java" -exec javac {} \;
Si todas sus clases no se han compilado sin embargo, si hay un arnés principal o clase del controlador (básicamente, la que contiene el método principal), la compilación de esa clase principal debe individualmente compilar la mayor parte del proyecto, incluso si están en carpetas diferentes, ya que Javac intentará en la medida de sus posibilidades resolver problemas de dependencia.
Por curiosidad, ¿qué SO estás usando - Windows, Linux, Mac, etc.? Esto podría ayudar a responder la pregunta –
estoy usando linux. – euphoria83
No he compilado java en la línea de comandos en un par de años, pero creo que si pasa el archivo que contiene su main() a javac, buscará todos los demás archivos que necesita compilar ya que todas sus dependencias pueden ser descubierto a partir del archivo que contiene main(). – Endophage