Запустить класс в файле Jar

Если у вас есть файл с именем jar myJar.jar находится в /myfolder, и вы хотите использовать класс под названием myClass Исходя из этого, как вы делаете это из командной строки?

Я думал, что это будет пойти в каталог и сказать java -cp myJar.jar.myClass но это не работает Любая помощь будет оценена.

5 ответов

Решение

Использование java -cp myjar.jar com.mypackage.myClass,

  1. Если класс не в пакете, то просто java -cp myjar.jar myClass,

  2. Если вы не в каталоге, где myJar.jar находится, то вы можете сделать:

    1. На платформах Unix или Linux:

      java -cp /location_of_jar/myjar.jar com.mypackage.myClass

    2. В Windows:

      java -cp c:\location_of_jar\myjar.jar com.mypackage.myClass

Ты хочешь:

java -cp myJar.jar myClass

Документация приводит следующий пример:

C:> java -classpath C:\java\MyClasses\myclasses.jar utility.myapp.Cool

Есть два типа файлов JAR, доступных в Java:

  1. Выполняемый / исполняемый файл JAR, который содержит файл манифеста. Для запуска Runnable Jar вы можете использовать java -jar fileName.jar или же java -jar -classpath abc.jar fileName.jar

  2. Простой jar-файл, который не содержит файл манифеста, поэтому вы просто запускаете свой основной класс, указывая его путь java -cp ./fileName.jar MainClass

Предполагая, что вы находитесь в каталоге, где myJar.jar файл и что myClass имеет public static void main() метод на это:

Вы используете следующую командную строку:

java -cp ./myJar.jar myClass

Куда:

  1. myJar.jar находится в текущем пути, обратите внимание, что . не в текущем пути на большинстве систем. Здесь также предпочтительней полный путь.

  2. myClass это полный путь пакета к классу, пример предполагает, что myClass находится в пакете по умолчанию, что является плохой практикой, если он находится во вложенном пакете, он будет com.mycompany.mycode.myClass,

Это правильный способ выполнить .jarи любой другой класс в этом .jar должен иметь main() и следующие параметры к нему:

java -DLB="uk" -DType="CLIENT_IND" -jar com.fbi.rrm.rrm-batchy-1.5.jar
Другие вопросы по тегам