Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jar错误:找不到或无法加载主类_Java_Executable Jar - Fatal编程技术网

Java Jar错误:找不到或无法加载主类

Java Jar错误:找不到或无法加载主类,java,executable-jar,Java,Executable Jar,我已经构建了一个简单的GUI,它接受无组织的HTML代码并对其进行组织…现在我终于可以使用它了,我需要学习如何分发它。我设法创建了我的.jar文件,但当我尝试运行它时,我得到了“错误:找不到主类HTMLFormatter.class或加载主类HTMLFormatter.class失败” 以下是我所做的: 首先,我转到项目目录中的“bin”文件夹,并将所有适用的类文件复制到另一个单独的文件夹中(因为我不想意外地弄乱原始类文件)。在这个单独的文件夹中,我还创建了manifest.txt,其中包含:

我已经构建了一个简单的GUI,它接受无组织的HTML代码并对其进行组织…现在我终于可以使用它了,我需要学习如何分发它。我设法创建了我的.jar文件,但当我尝试运行它时,我得到了“错误:找不到主类HTMLFormatter.class或加载主类HTMLFormatter.class失败”

以下是我所做的:

首先,我转到项目目录中的“bin”文件夹,并将所有适用的类文件复制到另一个单独的文件夹中(因为我不想意外地弄乱原始类文件)。在这个单独的文件夹中,我还创建了manifest.txt,其中包含:

Manifest-Version: 1.0
Main-Class: HTMLFormatter.class
Class-Path: .
然后,我从该目录运行了以下命令:

jar cfm HTMLFormatter.jar manifest.txt ./*.class
这就很好地创建了JAR,我使用winrar查看内部,它包含所有正确的类文件,并且清单位于META-INF目录中。然后我试着运行它,首先双击,尽管我甚至不确定这是否有效……然后我试着通过命令行使用以下命令运行它:

java -jar HTMLFormatter.jar
这就是我收到错误信息的时候。然后我从这个网站上读到一篇文章,暗示windows有时使用javaw来代替。。。因此,我对javaw使用了上面相同的命令,它没有给我一个错误,但它仍然没有生成我的GUI


那么,我错过了什么?另外,当我最终弄明白这一点时,我是否应该双击jar文件?(windows 8.1 64位,以防万一)

您的主类定义错误。它应该是
Main类:com.my.example.HTMLFormatter

好吧,仍然不确定为什么我的方法不起作用,但我现在通过Eclipse使它起作用了。以下是我所做的,供其他人将来参考:

  • 在Eclipse中:文件>导出
  • 展开“Java”部分,选择“可运行JAR文件”,单击下一步
  • 对于“启动配置”,选择您的类和项目,它们以以下格式列出:“类名-项目名”
  • 单击“浏览”选择导出目的地(您希望JAR文件放置的位置)
  • 标题为“库处理”的部分我不完全理解,但默认选项(顶部)对我有效
  • 结束
  • 通过双击它来测试它
  • 希望这能帮助别人


    干杯

    我以前看到过这个建议,从我的理解来看,“com.my.example”部分包是正确的吗?我读到这不是必须的,但强烈推荐,所以我肯定会尝试,但我真的不理解什么是包的概念,也不知道如何正确使用包。。。对不起,我还是个学生!