Мне нужно иметь возможность компилировать и запускать проект Java из терминала, без использования чего-либо вроде Maven или Gradle. Структура проекта выглядит примерно так:
project
src
package1
Main.java
package2
Class1.java
Class2.java
bin
lib
jar1.jar
jar2.jar
Main.java
содержит метод main()
, и для его выполнения необходимы Class1
и Class2
. Также нужны файлы .jar
jar1
и jar2
, расположенные в папке lib. Я хотел бы, чтобы все файлы .class были в папке bin.
Я попробовал свои силы в выяснении команды терминала для компиляции и запуска программы, но я немного застрял. Это лучшее, что мне удалось выяснить:
cd project
javac -d bin/ -cp lib/jar1.jar:lib/jar2.jar src/package2/*.java src/package1/*.java
Это успешно компилируется, но затем, когда я пытаюсь запустить Main.java
:
java -cp lib/jar1.jar:lib/jar2.jar src/package1/Main
Я получаю следующую ошибку:
error: invalid flag: src/package1/Main
Usage: javac <options> <source files>
use --help for a list of possible options
Может ли кто-нибудь объяснить мне, что я делаю не так?