繁体   English   中英

使用One-Jar找不到主要方法

[英]main method not found using One-Jar

我正在使用One-Jar将我的应用程序及其依赖项组合到一个jar文件中。 我逐步使用了命令行方法。 但是,当使用java -jar one-jar.jar运行jar文件时,我收到以下信息

error:

Exception in thread "main" java.lang.ClassNotFoundException: com.webtest.hc.Main
    at com.simontuffs.onejar.JarClassLoader.findClass(JarClassLoader.java:713)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at com.simontuffs.onejar.JarClassLoader.loadClass(JarClassLoader.java:630)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at com.simontuffs.onejar.Boot.run(Boot.java:336)
    at com.simontuffs.onejar.Boot.main(Boot.java:168)

这是我的boot-manifest.mf:

Manifest-Version: 1.0

Main-Class: com.simontuffs.onejar.Boot

One-Jar-Main-Class: com.webtest.hc.Main

我遵循与一罐网站完全相同的指示

您的JAR包装不正确。 消息错误表明Java无法找到One-Jar加载程序,即com.simontuffs.onejar.Boot因此,即使您尝试按照One-Jar网站上的说明进行操作,您最终还是以格式错误的存档而告终。

我怎么知道JAR格式不正确?

好吧,从JVM消息中,如果您尝试使用ZIP查看器打开JAR,我们可以猜测您错过了以下文件:

META-INF/MANIFEST.MF
com/simontuffs/onejar/Boot.class
com/simontuffs/onejar/Handler$1.class
com/simontuffs/onejar/Handler.class
com/simontuffs/onejar/JarClassLoader$ByteCode.class
com/simontuffs/onejar/JarClassLoader.class
boot-manifest.mf

如何解决包装过程?

这要看情况了,我们没有消息来源,所以无法确定。 作为个人建议,我将Gradle用作构建工具,并将其与IDE(Eclipse和Intellij)以及Capsule (One-Jar的替代品)很好地集成在一起。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM