java - 创建 .JAR 文件失败

标签 java eclipse jar

我正在使用 Eclipse,并且我有一个非常简单的项目,我会为您保存代码。它执行得很好并且运行得很好。它有两个.java文件,其实项目树是这样的:

**mewLog**  
 - src/ (dir)   
   mewlog/ (package)  
    - MLGlobal.java  
    - MLMain.java (surprise, this one contains main and some initialization methods)    
   mlGUI/ (package)  
     - this one is empty (empty package!)  

因此,我转到"file"->“导出”。我像往常一样按照这些步骤进行操作,它使我的 .JAR 文件运行良好,没有任何警告或问题。好!

到目前为止一切都很好,所以我冲到我的终端,导航到我导出 jar 的文件夹,然后按如下方式执行它:

java -jar mewLog_macosx-x86.jar

砰!这里出错了,终端给我以下输出:

Exception in thread "main" java.lang.NoClassDefFoundError: MLMain
Caused by: java.lang.ClassNotFoundException: MLMain
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)

好的。在你说“哦,你得添加类路径”之前。我试过了,它不起作用,无论我做什么,都给我“BLAH”。

我使用的是 Mac OS X Snow Leopard。

jar -tf mewLog_MacOSX-x86.jar 的输出

jar -tf mewLog_MacOSX-x86.jar  
META-INF/MANIFEST.MF  
.project  
.classpath  
mewlog/MLGlobal.class  
mewlog/MLMain.class

最佳答案

java -cp mewLog_macosx-x86.jar mewlog.MLMain

工作?

如果是这样,那么 Jar 中的 list 文件指向错误的主类(不考虑包)

关于java - 创建 .JAR 文件失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4891924/

相关文章:

java - 使用 Gradle 在 Eclipse 中自动下载库

java - 我必须做什么才能保证 ccc.jar 在 aaa.jar 之前加载?

java - 无法清除过时文件的服务器 : null java. lang.NullPointerException

ide - 多个基于Eclipse的IDE是否相互冲突?

带有 SWT 的 JavaApplicationStub 导致问题

java - 无法使用 maven pom 和 eclipse 一致地创建 src/test/java 模块 jar

java - Listview删除项目和刷新 - android

java - 从java执行cmd命令后如何定期检查文件?

java - Tomcat spring boot 应用程序 LifecycleException

java - 让 Jackson 对输入 JSON 更友好