Подтвердить что ты не робот

Как я могу скомпилировать и запустить класс Java в другом каталоге?

Я пишу make файл, который компилирует файл .java в другой каталог, а затем я хочу запустить его, не меняя каталогов. Я хочу сделать что-то вроде:

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

где файл Java находится /home/myjavafile.java, а файл makefile не работает из /home.

Как я могу это сделать?

4b9b3361

Ответ 1

Возможно, я не понимаю вопрос, но вы можете скомпилировать его с помощью

javac /home/MyJavaFile.java

Это создаст MyJavaFile.class в /home

Затем вы можете запустить его, включив /home в путь к классам. например.

java -cp /home MyJavaFile

Если вы хотите сгенерировать файл класса в другом каталоге, вы можете использовать опцию -d для javac.

Ответ 2

Используйте параметр командной строки -d с помощью javac, чтобы сообщить, в какой каталог вы хотите хранить скомпилированные файлы классов. Затем, чтобы запустить программу, просто включите этот каталог в путь к классам:

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