Я обычно избегаю исполняемых фляг.Предполагая, что у нас есть класс com.example.MyClass
, который имеет метод main
, тогда манифесту "исполняемого файла jar" (myapp.jar) нужна строка
Main-Class: com.example.MyClass
Затем вы можете запустить приложение,this
java -jar myapp.jar
Помимо некоторых раздражений пути к классам, это очень похоже на
java -cp myapp.jar com.example.MyClass
«раздражение»: если приложение запускается с параметром -jar
, classpath имеет , который будет определен в манифесте - он будет игнорировать любую запись CLASSPATH
или атрибут -cp
.Поэтому, если у вас есть зависимости, вам придется скопировать и вставить их из атрибута classpath manifest в атрибут -cp
:
java -cp myapp.jar;<other libs> com.example.MyClass