Несколько вариантов команды javac
Я отсортировал Java-файлы в подкаталогах, чтобы сделать их более аккуратными, и мне было интересно, можно ли получить доступ к jar-файлам и исходным файлам, а затем поместить файлы классов в другую указанную папку с помощью одной команды javac?
Как правило, у меня есть JAR-файл в / lib, java-файлы в / src и пустая папка с именем / bin, куда должны идти мои файлы классов.
Когда мои файлы java и class были верхнего уровня, и только jar находился в подкаталоге, моя команда терминала для компиляции была:
javac -cp .:./lib/mysql-connector-java-5.1.38-bin.jar Test.java
Я до сих пор понимаю, что мне нужен -cp, чтобы найти jar, но мне также нужно -d, чтобы указать, где я хочу разместить файлы классов, и -sourcepath, чтобы найти исходные файлы (разве мне не нужен просто src/Test.java?).
Как я смогу сделать это легальным вкладом для терминала?
В связи с этим возникает вопрос: есть ли способ создать скрипт для запуска этой команды javac каждый раз в linux? Это было бы очень приятно знать.
Большое спасибо!
1 ответ
Сначала ответь на твой вопрос
... можно получить доступ к jar-файлам и исходным файлам, а затем поместить файлы классов в другую указанную папку с помощью одной команды javac?
Да. использование -cp
указать путь к классу и -d
указать каталог назначения. Обратите внимание, что файлы классов будут записаны в подкаталоги целевого каталога в соответствии с иерархией имен пакетов.
Если вы хотите скомпилировать пошагово, рекомендуется включить -d
каталог на пути к классам. Для неинкрементной (чистой) сборки удалите все в -d
каталог первый.
Как я смогу сделать это легальным вкладом для терминала?
javac -d bin -cp bin:./lib/mysql-connector-java-5.1.38-bin.jar Test.java
В связи с этим возникает вопрос: есть ли способ создать скрипт для запуска этой команды javac каждый раз в linux?
Каждый раз что?
Да, в Linux можно писать скрипты. Относительно легко на самом деле, если вы делаете простые вещи. (Я уверен, что вы могли бы найти некоторые учебники по сценариям оболочки.)
Да, можно написать скрипт для запуска
javac
команда.Да, можно написать скрипт для запуска
javac
команда и другие вещи... до или после.Это хорошая идея? Решать вам.
Но есть лучшие способы для создания (особенно) больших Java-приложений, чем написание специальных сценариев оболочки. Я рекомендую вам уделить время, чтобы узнать о переносимых инструментах сборки Java, таких как Ant, Maven и Gradle