我需要创建一个jar文件,并且不使用maven或gradle包。
首先-我使用了我在StackOverflow中看到的所有选项,所以请不要将这个问题标记为duplicated
,如果您不确定您将找到的解决方案-我已经尝试了其中的更多选项。
- 项目结构:**
\src
---\Main.java
---\A.java
---\B.java
- 步骤**:
- 1.汇编:*
javac \src\*.java
- 结果:
\src
---\Main.class
---\A.class
---\B.class
- 2.创建的清单文件:*
Manifest-Version: 1.0
Main-Class: src.Main
- 3.编译到jar:*
jar cfm test.jar MANIFEST.MF src/
- 4.发射:*
java -jar test.jar
结果:
无主清单属性,在test.jar中
- 我也试着跟随**
jar cvfe myjar.jar src.Main src\*.class
和许多其他选项-相同的结果
如何正确地本地创建一个jar文件?
3条答案
按热度按时间wz8daaqr1#
项目结构
清单文件
Main.java
步骤
1.编译:
结果
2.将舱单、MF复制到外部
结果
3. Package 罐
最终结果
4.启动:
Jar文件结构
项目结构-无清单。MF
步骤
编译. java
结果
Package 罐
结果
启动:
b91juud32#
根据JAR规范,清单文件的名称-值行必须以换行符(
CR LF
、CR
或LF
)终止:由于清单文件包含
Main-Class: src.Main
,但未被识别(“no main manifest attribute...”),因此该行(最后一行)之后可能缺少换行符。有些编辑器不会在文件末尾添加换行符。
为了避免这个问题,请始终在清单文件的最后包含一个空行。
这是一个非常老的 * 问题 *,我希望
jar
工具能够纠正这个问题,或者至少能够对此发出警告toiithl63#
使用生成文件
文件夹结构
一个二个一个一个