Как я могу скомпилировать и запустить класс 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
.
Как я могу это сделать?
Ответы
Ответ 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