没有找到主类,IntelliJ构建一个jar

时间:2012-06-23 03:38:49

标签: java intellij-idea executable-jar classnotfound

当我尝试运行在IntelliJ中创建的jar文件时,我遇到了问题 我按照这里列出的步骤进行了操作:How to build jars from IntelliJ properly?并使用IntelliJ远程搜索其他有相同问题的人,但没有找到解决办法。
在菜单项目结构>工件部分我有包和主类名,我也尝试使用相对和绝对路径指定'类路径'位到源文件和.class文件(似乎隐藏在IntelliJ项目显示树..),但即使有这一切(我还确保每次更改内容时重建jar)我得到“找不到主类。程序将退出。”我尝试运行jar时发出消息。

在主项目文件夹中,有src和out out包含包树和类文件的'production' out还包含jar文件夹和jar可执行文件的'artifacts' src包含图像文件夹,META-INF和包树 包中的第一个文件夹包含主类,所以src / ravelDemo / RavelDemoMain.java

在项目设置>工件中,主类列为ravelDemo.RavelDemoMain
目前,类路径是\ production \ RavelSequence v1.03 \ ravelDemo \但是这个以及我指定(或留空)的所有其他类路径似乎都没有指向正确的位置。 (RavelSequence v1.03是项目的名称)。

我做错了什么?

2 个答案:

答案 0 :(得分:3)

基于讨论,上面的注释显示IntelliJ IDEA正在构建有效的可执行jar,其中主类在Manifest中正确指定,当使用java -jar ...命令从命令行执行时,此jar工作正常该项目在用户的计算机上定位JDK版本。

问题是,双击 @ sideways8 系统无效。它可能是由于Windows注册表中的默认Java安装损坏或错误的.jar文件类型关联引起的。这是机器特定的问题,因为通过双击在我的系统上运行共享项目jar没有问题

要解决此问题,您可以尝试从Control Panel |卸载此计算机上存在的所有Java版本Programs and Features,然后从头开始安装新的JDK,这样它就是系统中唯一的JDK,.jar文件类型由它处理。

我使用Total Commander有一个很好的功能来检查/编辑文件关联(File | Associate With...),这是我按下.jar关联时的显示方式Edit type...

jar file type

答案 1 :(得分:0)

我遇到了同样的问题。 jar文件是使用IntelliJ IDEA或其他IDE创建的。我发现我的问题是我的计算机上安装了两个版本的java(java 6& java 8)。 这是系统配置错误的问题。所以删除你的任何版本的Java并重新安装它,问题就解决了。