如何获取Java程序的可执行文件?

时间:2009-04-13 04:22:01

标签: java executable-jar

  

可能重复:
  How can I convert my java program to an .exe file ?

我正在尝试将用Java 6编写的程序导出到JAR文件。

我的项目包含一个来自Internet的Java库和一些Java源文件。当我创建JAR文件时,默认情况下应该设置类路径,最终用户应该能够直接从命令提示符或其他来源运行项目。

我的目标是将所有内容导出到JAR文件,如果可能的话。此外,程序输出应在命令提示符下给出。

如何以这种方式导出我的程序?

3 个答案:

答案 0 :(得分:3)

你需要为此写一个META-INF/MANIFEST.MF文件;该文件应位于您正在分发的jar文件中(即,人们与java -jar一起使用的文件)。这是我写的最近“项目”的一个例子:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.0
Created-By: 11.3-b02 (Sun Microsystems Inc.)
Main-Class: com.hedgee.simonsays.Main
Class-Path: lib/libthrift.jar

要关注的主要字段是Main-Class(指定要查找main方法的类),Class-Path(指定您正在使用的外部jar文件)

答案 1 :(得分:1)

您可以使用Jsmooth http://jsmooth.sourceforge.net/捆绑您的Java代码以生成可执行文件。

答案 2 :(得分:1)

我有两种不同方法的经验:

1)使用带有eclipse的fatjar插件创建一个包含所有嵌入式jar的jar文件(使用自定义类加载器)。这将创建一个可点击的jar文件(如果它是一个GUI程序)。如果你需要这个Jar的控制台输出,请按照Bhushan所描述的那样用jsmooth进行包装。

2)使用Eclipse 3.5 Milestone 6中的“Export - > Runnable Jar”和“将依赖库复制到子文件夹”选项来创建一个普通的可运行jar,其中包含一个引用相关jar文件的正确清单(放在在子文件夹中)。如果你想要一个不使用任何技巧的解决方案,这种方法非常有效,但是编写脚本有点困难。