¿Cómo puedo comstackr y ejecutar una clase Java en un directorio diferente?

Estoy escribiendo un archivo MAKE que comstack un archivo .java en un directorio diferente, y luego quiero ejecutarlo, sin cambiar directorios. Quiero hacer algo como:

 $(SQM_JAVA_TOOL_DONE) : $(SQM_JAVA_TOOL) $(shell cd /home_dir) javac myjavafile.java java myjavafile 

donde el archivo Java es /home/myjavafile.java , y el archivo MAKE no se está ejecutando desde /home .

¿Cómo puedo hacer esto?

Podría estar malinterpretando la pregunta, pero puedes comstackr con

 javac /home/MyJavaFile.java 

Esto creará MyJavaFile.class en /home

Luego puede ejecutarlo incluyendo /home en classpath. p.ej

 java -cp /home MyJavaFile 

Si desea generar el archivo de clase en un directorio diferente, puede usar la opción -d para javac .

Utilice el parámetro de línea de comandos -d con javac para indicarle en qué directorio desea almacenar los archivos de clases comstackdos. Luego, para ejecutar el progtwig, simplemente incluya este directorio en el classpath:

 javac -d some/directory myjavafile.java java -cp some/directory myjavafile