我正在尝试使用mac终端创建一个.jar文件但是有点麻烦。我按照here的步骤进行了操作,但没有成功。我收到此错误消息:
Failed to load Main-Class manifest attribute from
aclient.jar
那你究竟是怎么做的呢?我的java程序叫做Main.java,我把它编译成.class文件。现在该怎么办?
由于
答案 0 :(得分:44)
1)确保所有必需的文件都在目录中,您已打开终端/命令提示符并已导航到该目录。
2)使用
编译.java类,例如HelloWorld.javajavac HelloWorld.java
3)这将生成JAR文件所需的.class文件。
4)接下来使用文本编辑器创建一个清单文件(使用扩展名.txt保存)并输入以下内容
Main-Class: HelloWorld
或任何文件的名称。
5)接下来使用以下代码创建JAR文件:
jar cfm HelloWorld.jar Manifest.txt HelloWorld.class
6)运行文件:
java -jar HelloWorld.jar
如果有任何不清楚的地方,请咨询以下网站: creating a jar file和setting an applications entry point。
希望这有助于其他人,为汤姆喝彩!
编辑:
根据inga的评论,值得注意的是,为了在jar中包含多个文件,您需要使用:
javac *.java
接着是
jar cfm HelloWorld.jar Manifest.txt *.class
答案 1 :(得分:5)
是的,我们需要在课程名称末尾使用新行...这对我有用
即。主类:HelloWorld
It will look like this in Notepad++
1.Main-Class: HelloWorld
2.
答案 2 :(得分:3)
也许这会有助于重新发布Manifest.txt文件:
警告:文本文件必须以新行或回车结束。如果最后一行没有以新行或回车结束,则不会正确解析。
答案 3 :(得分:2)
您需要一个定义main的文本文件 类。 e.g
% cat MyMain
Main-Class: HelloWorld
然后
%jar cvfm foo.jar MyMain *.class
%java -jar foo.jar
Hello world
答案 4 :(得分:0)
我按照说明进行操作,加载Manifest.txt文件时出现问题。
在Manifest.txt中,我们只需要编写 主类:class_name
但在上述声明之后,请在Manifest.txt中按Enter键,您的Manifest.txt加载问题将得到解决。清单文件末尾需要换行。
致谢