У меня есть программа, состоящая из двух простых файлов Java Swing.
Как создать исполняемый файл JAR для моей программы?
java
jar
executable-jar
Рувим
источник
источник
Ответы:
Файл jar - это просто файл, содержащий набор файлов java. Чтобы сделать файл jar исполняемым, вам необходимо указать, где находится
main
класс в файле jar. Пример кода будет следующим.public class JarExample { public static void main(String[] args) { javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { // your logic here } }); } }
Скомпилируйте свои классы. Чтобы создать банку, вам также необходимо создать файл манифеста (
MANIFEST.MF
). Например,Manifest-Version: 1.0 Main-Class: JarExample
Поместите скомпилированные файлы выходных классов (JarExample.class, JarExample $ 1.class) и файл манифеста в одну папку. В командной строке перейдите в папку, в которой размещены ваши файлы, и создайте банку с помощью команды jar. Например (если вы назовете свой файл манифеста как jexample.mf)
Будет создан исполняемый файл jarexample.jar.
источник
jar cvfe jarexample.jar com.example.jar.JarExample *.class
В Eclipse это можно сделать просто следующим образом:
источник
Вот он в одной строке:
jar cvfe myjar.jar package.MainClass *.class
где
MainClass
- класс с вашимmain
методом, аpackage
-MainClass
пакет.Обратите внимание, что перед этим вы должны скомпилировать
.java
файлы в.class
файлы.c create new archive v generate verbose output on standard output f specify archive file name e specify application entry point for stand-alone application bundled into an executable jar file
Этот ответ вдохновлен комментарием Powerslave к другому ответу.
источник
Error: Could not find or load main class mtx.testClass Caused by: java.lang.ClassNotFoundException: mtx.testClass
testClass
определенные в одном из ваших.class
файлов? Перед.java
запуском этой команды убедитесь, что вы скомпилировали файлы source ( ). Кроме того, обычно ваш класс должен быть UpperCamelCase, вместо этого вы можете попробовать переименовать его вTestClass
.Если вы используете maven, добавьте в файл pom.xml следующее :
<plugin> <!-- Build an executable JAR --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <configuration> <archive> <manifest> <mainClass>com.path.to.YourMainClass</mainClass> </manifest> </archive> </configuration> </plugin>
Тогда можешь бежать
mvn package
. Файл jar будет расположен в целевом каталоге.источник
Слишком поздно отвечать на этот вопрос. Но если кто-то сейчас ищет этот ответ, я заставил его работать без ошибок.
Прежде всего, обязательно загрузите и добавьте maven в путь . [
mvn --version
] предоставит вам спецификации его версии, если вы правильно добавили путь.Теперь добавьте следующий код в проект maven [
pom.xml
], в следующем коде замените точкой входа в ваш собственный основной файл, например, [ com.example.test.Test ].<plugin> <!-- Build an executable JAR --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <configuration> <archive> <manifest> <mainClass> your_package_to_class_that_contains_main_file .MainFileName</mainClass> </manifest> </archive> </configuration> </plugin>
Теперь перейдите в командную строку [
CMD
] в вашем проекте и тип ,mvn package
и он будет генерировать банку файл как - то вродеProjectName-0.0.1-SNAPSHOT.jar
подtarget
каталог.Теперь перейдите в целевой каталог с помощью
cd target
.Наконец, введите
java -jar jar-file-name.jar
и да, это должно работать успешно, если в вашей программе нет ошибок.источник