Java 生成的JAR文件-发生JNI错误

Java 生成的JAR文件-发生JNI错误,java,intellij-idea,jar,java-native-interface,Java,Intellij Idea,Jar,Java Native Interface,我正在使用IntelliJ思想从LeanFT项目创建一个jar工件 已生成jar工件,但出现以下错误消息: 发生JNI错误,请检查您的安装并重试 当试图直接执行jar文件时 当我使用IDE执行时,它正在工作。不需要参数或参数值。当我从一个简单的“Hello World”生成一个jar文件时,我遇到了同样的错误 堆栈跟踪: 错误:发生JNI错误,请检查您的安装并重试 线程“main”java.lang.SecurityException中的异常: 清单主属性的签名文件摘要无效 位于sun.secu

我正在使用IntelliJ思想从LeanFT项目创建一个jar工件

已生成jar工件,但出现以下错误消息:

发生JNI错误,请检查您的安装并重试

当试图直接执行jar文件时

当我使用IDE执行时,它正在工作。不需要参数或参数值。当我从一个简单的“Hello World”生成一个jar文件时,我遇到了同样的错误

堆栈跟踪:

错误:发生JNI错误,请检查您的安装并重试
线程“main”java.lang.SecurityException中的异常:
清单主属性的签名文件摘要无效
位于sun.security.util.SignatureFileLeverifier.processImpl(未知源)
位于sun.security.util.SignatureFileForever.process(未知源)
位于java.util.jar.JarVerifier.processEntry(未知源)
位于java.util.jar.JarVerifier.update(未知源)
位于java.util.jar.JarFile.initializeVerifier(未知源)
位于java.util.jar.JarFile.getInputStream(未知源)
位于sun.misc.URLClassPath$JarLoader$2.getInputStream(未知源)
位于sun.misc.Resource.cachedInputStream(未知源)
位于sun.misc.Resource.getByteBuffer(未知源)
位于java.net.URLClassLoader.defineClass(未知源)
位于java.net.URLClassLoader.access$100(未知来源)
位于java.net.URLClassLoader$1.run(未知源)
位于java.net.URLClassLoader$1.run(未知源)
位于java.security.AccessController.doPrivileged(本机方法)
位于java.net.URLClassLoader.findClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
位于sun.misc.Launcher$AppClassLoader.loadClass(未知源)
位于java.lang.ClassLoader.loadClass(未知源)
位于sun.launcher.LaunchHelper.checkAndLoadMain(未知源)

这可能与您电脑上安装的java版本有关。请检查它是否与用于编译代码的java版本相同。

我查看了您遇到的异常情况:
清单主属性的签名文件摘要无效

您是否使用签名jar文件作为项目的依赖项?如果是这样,当您生成一个包含依赖项的jar时,然后尝试执行它——JVM将您生成的jar检测为您正在使用的已签名jar的操作

以下是遇到此异常的问题列表:


按照上面的链接,找到确切的解决方案,这将有助于你。解决方案取决于您在部署方面的具体操作(具体说明如何创建jar工件)。

需要大量信息来帮助您解决问题,伙计。您是否使用Maven来创建jar工件?如果是,您是如何具体配置pom.xml包件/insytallation的?另外,您是否在项目中实际使用JNI?我是从具有依赖关系的模块构建的,而不是使用Maven。不,我不使用JNI。是的,我使用jar文件作为MVNRepository中的依赖项。@plaidshirt:请继续。您是如何处理您的问题的?我不确定,如何解决这个问题,因为我不使用Maven,也不确定如何修改下载的jar文件以使其未签名。@plaidshirt:目的不是修改已签名的jar,而是确保您生成的jar考虑了已签名的jar并相应地进行了签名。我明白了,但是找不到任何关于生成签名jar文件的文章。