【问题标题】:Jar works on another computer, not one that created itJar 在另一台计算机上工作,而不是在创建它的计算机上工作
【发布时间】:2012-02-27 14:37:24
【问题描述】:

我在 NetBeans 中创建了一个简单的 java swing 程序。完成代码后,我执行“清理和构建主项目”并获取一个 jar 文件。

然后我尝试运行它,我得到“找不到主类”但是当我通过控制台运行它时它工作正常。因此,我复制了 NetBeans 创建的所有文件,并将它们放在闪存驱动器上,然后将它们带到笔记本电脑上。我在笔记本电脑上收到了同样的消息,所以我查看了 manifest.mf。我添加了主类及其所在位置和实际工作的行。我会双击罐子,它工作得很好。

所以我想我可以回到创建项目的计算机并进行完全相同的更改,它会起作用。我错了,我又得到了“找不到主类”的错误。

我真的不明白,原因如下:

两台计算机都运行 Windows 7

两台计算机都运行相同版本的 Java

两台计算机的 jar 文件所在目录完全相同

两台计算机都有完全相同的文件,包括 manifest.mf

两台计算机在环境变量部分具有相同的 PATH 和 CLASS PATH

我创建此程序的计算机无法通过双击运行它,但另一台计算机可以运行它,这似乎真的很奇怪。 计算机上是否有其他设置可能会阻止它通过双击运行 jar?

编辑:通过更新到最新的 java 修复了“找不到主类”错误。我刚刚通过压缩文件夹在另一台台式电脑上对其进行了测试,双击运行良好。我可以从控制台正常运行 jar(在原始 PC 上),但是当我双击时..光标变为等待符号半秒钟然后停止,没有其他反应。 java版本相同,路径相同,jar文件是用Java(TM)Platform SE二进制打开的。有什么我遗漏的吗?

【问题讨论】:

    标签: java swing netbeans


    【解决方案1】:

    没有答案,你完成了吗???

    你必须在项目属性中设置主类

    请忽略虚拟机选项中的值

    【讨论】:

    • 是的,可能就是这样...但是如果您尝试在 Netbeans 中运行项目,它会询问 Netbeans 记住的主要类是什么...
    • 主类在项目属性中设置,就像它在 manifest.mf 中所述。
    【解决方案2】:

    您是否安装了诺基亚 ovi 套件...??
    如果是,那么您必须使用 Java(TM) Platform SE 二进制文件.....

    启动 jar 文件

    【讨论】:

    • 不,我没有安装诺基亚 ovi 套件,计算机打开 jars 的默认程序是 Java(TM) Platform SE 二进制文件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多