[英]Exporting jar from eclipse won't work
我在eclipse中构建了一个Java项目。 它在Eclipse中运行良好。 我之前将其导出为罐子,并且效果很好。 自上次出口以来已经有一段时间了。 这次,当我导出并单击罐子时,什么也没发生。
从命令行运行它会显示以下错误:
C:\>java -jar "C:\Users\Quinn\Desktop\think.jar"
Exception in thread "main" java.lang.IllegalAccessException: Class org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader can not access a member of class think.Main with modifiers "public static"
这个错误是什么意思? 有什么原因可能会发生这种情况? 我还没有在网上找到任何提及。
非常感谢。
编辑:当我解压缩罐子时,内容看起来像这样:
清单(在META-INF中)如下所示:(是的,它还有一个额外的空行)
Manifest-Version: 1.0
Rsrc-Class-Path: ./ substance-6.1.jar trident.jar
Class-Path: .
Rsrc-Main-Class: think.Main
Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
当您使用“导出”>“可运行的JAR文件”时,JarRsrcLoader将包含在Jar中。 它处理jar中的嵌套jar文件。
JarRsrcLoader试图找到您的think.Main
main
方法,但找不到名为main
的方法,它是public static
。
嗯,这是尴尬。 事实证明,尽管我的主要方法是public static
,但是包含的类不是public。 现在一切都已修复:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.