【问题标题】:Main class not found even when its existing主类即使存在也找不到
【发布时间】:2015-11-02 13:07:57
【问题描述】:

我正在我的平板电脑上工作一个我想在我的树莓派中运行的项目。我正在使用的 IDE AIDE 无法将我的项目导出为可执行的 jar 文件。所以我决定尝试使用命令行 我用过:

jar cvf ServerActivities.jar *

也创建了 jar 文件,但是当我想通过使用来启动它时

Java -jar ServerActivities.jar

它说我的 Main 类无法找到或加载,但它存在并包含一个 main 方法

【问题讨论】:

  • 它是你的清单中的Main-Classentry 吗?
  • 您需要指定哪个类包含您要运行的主要方法。为什么:想象一下你所有的类都有一个 main 方法。然后虚拟机不知道该选哪一个。所以你必须把这些信息放到 jar 文件中。
  • 您需要在创建 jar 时指定清单在哪里。例如:jar cvmf ServerActivities.jar META-INF/MANIFEST.MF *

标签: java class executable-jar


【解决方案1】:

【讨论】:

  • 我的意思是第一个链接的步骤^^
  • 不知道为什么,也许你做错了什么。运行 jar 的另一种方法是在命令提示符下使用 -cp 命令运行它。然后,您可以指定它应该运行的主类。在您的情况下,它看起来像这样:java -cp ServerActivities.jar com.path.to.main.class.MainClass。这样您就不需要清单文件了。
  • 我需要在 jar 文件中创建的路径来指定主类还是只需要我放置主类的包?因为使用 Java -CP ServerActivities.jar mypackage.MainClass 我仍然得到错误:/
  • 通过 Eclipse 创建 jar 时一切正常,所以我不知道为什么它现在不起作用:(
  • 尝试使用 7zip 之类的程序打开创建的 jar。你可以浏览jar文件,看看你编译的类是否真的在jar文件中。
猜你喜欢
  • 1970-01-01
  • 2019-11-10
  • 2015-10-26
  • 2018-09-25
  • 2018-06-17
  • 2017-10-10
  • 1970-01-01
  • 1970-01-01
  • 2023-01-11
相关资源
最近更新 更多