【问题标题】:Java compile on Ubuntu with openjdk, then run on windows with sun java gives errorJava 在 Ubuntu 上用 openjdk 编译,然后在 windows 上用 sun java 运行给出错误
【发布时间】:2012-07-31 20:02:50
【问题描述】:

我一直在使用 OpenJdk 在 Netbeans/Ubuntu 12.04 中开发 Java 程序。我已经让这个程序在 Linux 中使用 .jar 成功运行,但是当我将 .jar 复制到我的 Windows 7 虚拟机时,我收到以下错误;
“找不到主类:testprogram.Main。程序将退出。”

此外,该程序不使用外部库。

【问题讨论】:

  • 您确定已将 JAR 放在 Windows 上的类路径中吗?您(或 Netbeans)如何调用 JAR?
  • 我相信 netbeans 在我指定主类时会自动执行此操作,但如果没有,则有可能。
  • 你指定了主类吗?
  • @RyanAmos 我刚刚检查了我的项目设置,我的主类已设置。这与我收到的错误相同,但我们的问题不同,因为我能够让它在我的 IDE 和 .jar 中工作,但仅限于 linux

标签: java netbeans cross-compiling openjdk ubuntu-12.04


【解决方案1】:

您是如何开始您的计划的?你用java -jar yourjarfile.jar了吗?

也许你的 Manifest 文件没有定义应用入口点。你可以学习这个话题here

【讨论】:

  • 错误是:“找不到主类:testprogram.Main。程序将退出。”因此,Manifest 确实 包含Main-Class 属性。
【解决方案2】:

我对这个问题的修复是使用 JDK 6 而不是 JDK 7,仍然不确定为什么会产生这个错误,但是这个更改已经解决了这个问题。

【讨论】:

  • 你是否在 JDK 7 中编译然后尝试在 Java 6 中运行它?
  • @Bill 我在 OpenJDK 7 中编译,并尝试在具有最新 sun Java 的机器上运行它。
猜你喜欢
  • 1970-01-01
  • 2019-10-03
  • 1970-01-01
  • 2018-04-24
  • 1970-01-01
  • 1970-01-01
  • 2011-05-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多