首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在Vista业务上执行Java应用程序--“找不到主类.程序将退出”

无法在Vista业务上执行Java应用程序--“找不到主类.程序将退出”
EN

Stack Overflow用户
提问于 2009-08-18 13:40:21
回答 3查看 1.3K关注 0票数 2

我编写了一个Java应用程序(使用NetBeans6.7),需要Java1.6。我成功地在XP PC和Mac (10.5.7)上运行了它。

我的客户端正在运行Vista业务,不能通过双击jar文件来运行应用程序。他可以从命令行执行它:"javaw -jar .“收到的错误是:“找不到主类.程序将退出”。

我已经要求客户做以下工作:

  • 安装最新的JRE
  • 运行JarFix

我已经证实:

  • JRE安装在正确的位置
  • jar文件关联是正确的
  • 应用程序可以工作(正如我在XP和Mac上测试过的那样,客户端可以从命令行运行它)

还有什么我可以调查的吗?注意,Netbeans创建了主jar文件,并与其他几个Jarfile一起创建了lib目录。我已经解压缩了jarfile并检查了清单文件(它看起来不错)。正确的主类也在应用程序的jarfile中。

客户端是否需要小心在Vista中从何处执行应用程序?

非常感谢。普雷姆博

EN

回答 3

Stack Overflow用户

发布于 2009-08-18 14:29:50

在其他操作系统上,完全相同的JAR文件工作吗?

JAR文件中的清单文件(META/MANIFEST.MF)正确吗?需要注意的一个问题是,清单文件必须以空行结尾;如果没有,那么清单文件中的最后一行将被忽略。因此,例如,如果清单文件中的最后一行如下所示:

代码语言:javascript
复制
Main-Class: com.mypackage.MyProgram

并且它后面没有空行,那么Java将忽略这一行,并且它将无法找到程序的主类。

有关如何将应用程序打包到JAR中的详细信息,请参阅Sun关于在JAR文件中部署Java程序的Java教程;它还包含关于需要以空行结尾的清单文件的警告。

另外,还要反复检查是否使用了正确的Java版本。您是否使用与Windows完全相同的Java版本?尝试:

代码语言:javascript
复制
java -version

查看使用的是哪个Java版本。

票数 2
EN

Stack Overflow用户

发布于 2009-08-18 18:26:27

我正在运行Vista Enterprise,它和其他Windows版本(关于Java)之间的差别很小。

以下是一些随机的想法,这些想法可能有用,也可能行不通:

  • 您试过吗:右键单击Jar ->打开-> Java(TM)平台SE二进制文件
  • 是否与权限有关?(可能不会,因为它通过命令行运行)
  • 你试过把UAC关了吗?(UAC沙箱java应用程序,它们不能写入某些位置,如程序文件)
  • 您是否确保它们具有与JAVA_HOME/lib/ext/中相同的文件?
  • 您可以尝试设置环境变量:
    • JAVA_HOME=
    • CLASSPATH=。
    • PATH=\bin

票数 1
EN

Stack Overflow用户

发布于 2009-08-26 17:51:45

有时,JDK需要与needs一起单独安装。如果安装了jdk,则可以尝试检查环境变量中的类路径和路径。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1293927

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档