我在尝试打包Java文件时遇到了一个问题。我有三个Java文件:OneMessage.Java,TwoMessage.Java和AllMessages.Java。我在Windows上,因此我使用cmd编译这些文件:
javac OneMessage.Java
javac TwoMessage.Java
javac AllMessages.Java
然后我创建了一个Manifest文件 - 使用记事本 - 使用以下内容并将其保存为Manifest.mf:
Manifest-Version: 1.0
Main-Class: AllMessages
(“Main-Class:AllMessages”之后有一行。)
但是,当我尝试创建可执行JAR文件时,会出现问题,说明系统无法归档指定的文件(该文件位于源文件夹btw中)。这就是我输入以创建我的JAR文件:
cvmf AllMessages.jar Manifest.mf *.class
但是,我得到以下内容:“java.io.FileNotFoundException:Manifest.mf(系统找不到指定的文件”。
帮助一如既往地受到赞赏。
答案 0 :(得分:2)
不是Java大师,但我认为问题可能是您的JAR和Manifest文件排序错误。根据{{3}},我认为m
和f
需要分别对应Manifest和JAR文件的顺序。听起来应该是这样的:
jar cfmv AllMessages.jar Manifest.mf *.class
答案 1 :(得分:0)
我让这个工作。我有两件事情可以解决。我的Manifest.mf文件保存为文本文档,因此我返回并将其更改为所有文件。
然后我进入Oracle并发现在命令提示符上创建JAR文件的基本命令是:
jar cf jar-file input-file(s)
所以我改变了我的代码
cvmf AllMessages.jar Manifest.mf *.class
到
cf AllMessages.jar Manifest.mf *.class
我成功创建了一个JAR文件。请注意,即使您将Manifest.mf文件另存为文本文档,它仍会为您创建一个JAR文件。
创建JAR文件的链接:http://docs.oracle.com/javase/tutorial/deployment/jar/build.html