您好我已经创建了一个依赖于一些外部罐子的java应用程序。现在我想为我的项目创建一个可执行的jar文件。意思是如果我双击项目,那么它应该执行。如何使用依赖关系罐创建可执行jar
感谢 苏尼尔·库马尔Sahoo
您好我已经创建了一个依赖于一些外部罐子的java应用程序。现在我想为我的项目创建一个可执行的jar文件。意思是如果我双击项目,那么它应该执行。如何使用依赖关系罐创建可执行jar
感谢 苏尼尔·库马尔Sahoo
您可以用蚂蚁做,很容易:
<jar jarfile="MyJar.jar" basedir="bin">
<manifest>
<attribute name="Class-Path" value="lib/lib1.jar lib/lib2.jar lib/lib3.jar"/>
<attribute name="Built-By" value="me"/>
<attribute name="Main-Class" value="mypackage.Myclass"/>
</manifest>
</jar>
这将所有适当的条目添加到清单文件。为了能够运行jar,你还需要创建一个lib文件夹,并把所有的依赖罐子有:
myjar.jar
lib/lib1.jar
lib/lib2.jar
lib/lib3.jar
您将需要一个MANIFEST.MF文件添加到JAR为您的应用程序, (在META-INF目录下 - 如果使用'jar'命令行工具,它将确保文件结束在正确的位置)。它需要包含两个属性(至少):
更多细节可以在这里找到:http://java.sun.com/docs/books/tutorial/deployment/jar/manifestindex.html
如果你使用像Apache Maven构建工具,你可能会发现,它能够产生这种为你。
如果你使用Maven Assembly插件会为你做这个很干脆:http://maven.apache.org/plugins/maven-assembly-plugin/howto.html
否则,你就需要按照JAR文件教程中的说明:http://java.sun.com/docs/books/tutorial/deployment/jar/index.html并创建一个清单文件,包括你的主类为Main-Class: [classname]
并将您的外部罐子列为Class-Path: theirJar1 theirJar2
等。
您想要在JAR的清单文件中设置Class-Path属性。
This page应该给你一个很好的起点。
使用Eclipse插件叫做“fatjar”
它的更新站点
http://kurucz-grafika.de/fatjar
只需右键单击项目并使用fatjar选项,接下来让你选择哪一个库将被纳入的* .jar
属性顺序似乎很重要。 Class-Path需要在Main-Class之前出现。 – dacracot 2010-05-03 16:57:53