【问题标题】:Creating a .jar file which includes package folder [closed]创建一个包含包文件夹的.jar文件[关闭]
【发布时间】:2017-03-10 23:37:42
【问题描述】:

我要做的是创建一个.jar 文件,该文件夹中有一个myprogram.class 和一个包文件夹,在这个包文件夹中是所有其他.class 文件。

在 myprogram.class 文件中没有 main 方法,只有一个运行程序的 run 方法。我试过了

jar cfe myJar.jar myProgram myProgram.class

然后当我尝试用

执行它时
java -jar myJar.jar  

什么都没有发生。我决定提取.jar 文件并注意到它不包括包文件夹.class 文件只有myprogram.class 文件,任何人都可以解释我做错了什么,或提供解决方案。

【问题讨论】:

  • 不清楚。但是不管怎样,如果一个类中没有main方法,那么那个类就不能是jar文件的主类。您需要一个主要方法。 Java 寻找一个。它不关心你的运行方法。
  • 为什么人们对这个问题投了反对票。如果您投反对票,请提供理由。似乎人们只投票反对以提高自己的代表,这真的很烦人。我敢肯定,每个人有时都会被卡住,如果您不喜欢这个问题或想回答,请继续前进,放手。我经常看到。
  • 仅供参考,否决问题不会提高选民的代表。

标签: java executable-jar


【解决方案1】:

要使用java -jar 执行 JAR 文件,它需要:

  1. 包含public static void main(String[]) 方法的类。
  2. 在其Main-class: 属性中命名该类的 META-INF/MANIFEST.MF 文件。

您似乎没有满足任何一个标准。

包文件夹与它无关。

【讨论】: