【问题标题】:Problem running Java application运行 Java 应用程序的问题
【发布时间】:2009-04-02 07:39:50
【问题描述】:

我开发了一个 Java swing 应用程序,然后我通过 .jar 包进行了部署。

我在我的 PC 上双击 .jar 文件运行我的应用程序,一切正常,从命令行(dos 提示符)也一切正常。

这是我的问题。 我试图在另一台 PC 上运行我的应用程序:

  • 相同的操作系统(Windows XP)

  • 相同的 JRE (1.6.0_U13)

  • 但安装了 Oracle JInitiator 1.3.1.18(这是与我的 PC 的唯一区别)

该应用程序只能从命令行正常运行,但不能从 gui 运行!

双击 .jar 文件出现此错误:

`Could not find the main class. program will exit!`

这个错误可能是由于 JRE 和 JInitiator 之间的某些冲突造成的吗?

有人遇到过同样的问题吗?

谢谢


编辑:

从 gui 执行 .jar 文件与“javaw”命令相关联

【问题讨论】:

    标签: jar java


    【解决方案1】:

    这可能是与 JInit 的冲突,它改变了 jar 文件和用于启动它们的 java 命令之间的关联。

    看到这个thread

    重新安装java,问题消失了。

    【讨论】:

    • 在发帖前重新安装了java,没有任何改变:(
    • 啊。那你能仔细检查一下当前在 Windows 中为 jar 文件定义的文件关联吗?
    【解决方案2】:

    一个简单的描述可能是 - jinitiator 安装为一个完全实现的 JRE,在处理小程序时具有一些用于缓存下载的附加功能。

    正如我最近看到的所有 JRE 安装程序一样,无论它们是新的还是旧的,它们都会替换注册表中的多个条目以成为活动的 JRE。除非您提供 java.exe 的完整路径或更改注册表以重新指向不同的 JRE,否则您最后安装的任何内容都将运行。

    检查:

    • HKEY_CLASSES_ROOT\jarfile\shell\open\command 看看 javaw.exe 的路径是否正确。 (甚至包括在内)
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\java.exe 和 javaw.exe 和 javaws.exe 也可以检查那里的路径。

    【讨论】:

      【解决方案3】:

      您是否检查了 PATH/CLASSPATH/JAVA_PATH 变量。有可能是Jinitiator前面安装了错误的版本。

      【讨论】:

        【解决方案4】:

        可能检查您的清单条目。查看 jar 中的 MANIFEST.MF 是否包含正确设置为应该调用的类的 Main-Class 属性,如果没有尝试设置它。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-06-22
          • 2017-03-06
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多