运行Java应用程序的问题

时间:2009-04-02 07:39:51

标签: jar java

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

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

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

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

  • 相同的JRE(1.6.0_U13)

  • 但安装了Oracle JInitiator 1.3.1.18(这是我个人电脑的唯一区别)

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

运行

双击.jar文件我收到此错误:

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

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

有人遇到同样的麻烦吗?

由于


编辑:

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

相关联

4 个答案:

答案 0 :(得分:3)

这可能与JInit发生冲突,JInit会更改jar文件与用于启动它们的java命令之间的关联。

请参阅此thread

  

重新安装java并且问题已经消失。

答案 1 :(得分:1)

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

答案 2 :(得分:1)

快速描述可能是 - jinitiator安装为完全实现的JRE,在处理applet时具有一些用于缓存下载的附加功能。

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

检查:

  • HKEY_CLASSES_ROOT \ jar文件\壳\开放\命令 并查看javaw.exe的路径是否正确。 (甚至包括在内)
  • HKEY_LOCAL_MACHINE \ SOFTWARE \微软\的Windows \ CurrentVersion \应用程序 路径\ java.exe和javaw.exe以及javaws.exe也检查路径。

答案 3 :(得分:0)

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