我编写了一个Java应用程序(使用NetBeans6.7),需要Java1.6。我成功地在XP PC和Mac (10.5.7)上运行了它。
我的客户端正在运行Vista业务,不能通过双击jar文件来运行应用程序。他可以从命令行执行它:"javaw -jar .“收到的错误是:“找不到主类.程序将退出”。
我已经要求客户做以下工作:
我已经证实:
还有什么我可以调查的吗?注意,Netbeans创建了主jar文件,并与其他几个Jarfile一起创建了lib目录。我已经解压缩了jarfile并检查了清单文件(它看起来不错)。正确的主类也在应用程序的jarfile中。
客户端是否需要小心在Vista中从何处执行应用程序?
非常感谢。普雷姆博
发布于 2009-08-18 14:29:50
在其他操作系统上,完全相同的JAR文件工作吗?
JAR文件中的清单文件(META/MANIFEST.MF)正确吗?需要注意的一个问题是,清单文件必须以空行结尾;如果没有,那么清单文件中的最后一行将被忽略。因此,例如,如果清单文件中的最后一行如下所示:
Main-Class: com.mypackage.MyProgram并且它后面没有空行,那么Java将忽略这一行,并且它将无法找到程序的主类。
有关如何将应用程序打包到JAR中的详细信息,请参阅Sun关于在JAR文件中部署Java程序的Java教程;它还包含关于需要以空行结尾的清单文件的警告。
另外,还要反复检查是否使用了正确的Java版本。您是否使用与Windows完全相同的Java版本?尝试:
java -version查看使用的是哪个Java版本。
发布于 2009-08-18 18:26:27
我正在运行Vista Enterprise,它和其他Windows版本(关于Java)之间的差别很小。
以下是一些随机的想法,这些想法可能有用,也可能行不通:
发布于 2009-08-26 17:51:45
有时,JDK需要与needs一起单独安装。如果安装了jdk,则可以尝试检查环境变量中的类路径和路径。
https://stackoverflow.com/questions/1293927
复制相似问题