我有一个程序,它包含两个简单的java swing文件。
如何为我的程序制作可执行jar文件?
答案 0 :(得分:73)
jar文件只是一个包含java文件集合的文件。要使jar文件可执行,您需要指定jar文件中main
类的位置。示例代码如下。
public class JarExample {
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
// your logic here
}
});
}
}
编译你的课程。要制作一个jar,您还需要创建一个清单文件(MANIFEST.MF
)。例如,
Manifest-Version: 1.0
Main-Class: JarExample
将已编译的输出类文件(JarExample.class,JarExample $ 1.class)和清单文件放在同一文件夹中。在命令提示符下,转到放置文件的文件夹,然后使用jar命令创建jar。例如(如果您将清单文件命名为jexample.mf)
jar cfm jarexample.jar jexample.mf *.class
它将创建可执行文件jarexample.jar。
答案 1 :(得分:35)
在 Eclipse 中,您可以按如下方式执行此操作:
右键单击Java项目并选择 Export 。
选择 Java - > Runnable JAR文件 - >下一步。
选择启动配置并选择项目文件作为主类
选择要保存的目标文件夹,然后单击“完成”。
答案 2 :(得分:10)
/
其中jar cvfe myjar.jar package.MainClass *.class
是使用MainClass
方法的类,而main
是package
的包。
请注意,在执行此操作之前,您必须将MainClass
文件编译为.java
个文件。
.class
这个答案的灵感来自Powerslave对另一个答案的评论。
答案 3 :(得分:0)
如果您使用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文件将位于 target 目录下。
答案 4 :(得分:0)
回答这个问题为时已晚。但是,如果现在有人在搜索此答案,我就可以使其运行无误。
首先请确保下载并向路径添加行家。如果您已正确添加到路径,则[mvn --version
会为您提供版本说明。
现在,将以下代码添加到 maven项目 [pom.xml
]中,在以下代码中替换为您自己的主文件入口,例如[ com.example.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
的jar文件。 / p>
现在通过cd target
导航到目标 目录。
最后键入java -jar jar-file-name.jar
,是的,如果程序中没有任何错误,这应该可以成功工作。