Как запустить класс из Jar, который не является основным классом в файле манифестаJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как запустить класс из Jar, который не является основным классом в файле манифеста

Сообщение Anonymous »

У меня есть JAR с 4 классами, каждый из которых имеет метод Main. Я хочу иметь возможность запускать каждый из них в соответствии с потребностями. Я пытаюсь запустить его из командной строки в Linux.

Код: Выделить всё

E.g. The name of my JAR is MyJar.jar
Он имеет следующую структуру каталогов для основных классов:

Код: Выделить всё

com/mycomp/myproj/dir1/MainClass1.class
com/mycomp/myproj/dir2/MainClass2.class
com/mycomp/myproj/dir3/MainClass3.class
com/mycomp/myproj/dir4/MainClass4.class
Я знаю, что могу указать один класс в качестве основного в моем файле манифеста. Но есть ли способ указать какой-либо аргумент в командной строке для запуска любого класса, который я хочу запустить?

Я попробовал это:

Код: Выделить всё

jar cfe MyJar.jar com.mycomp.myproj.dir2.MainClass2 com/mycomp/myproj/dir2/MainClass2.class /home/myhome/datasource.properties /home/myhome/input.txt
И я получил эту ошибку:

Код: Выделить всё

com/mycomp/myproj/dir2/MainClass2.class : no such file or directory
(В приведенной выше команде «/home/myhome/datasource.properties» и «/home/myhome/input.txt» являются аргументами командной строки).< /п>

Подробнее здесь: https://stackoverflow.com/questions/547 ... ifest-file
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»