您的位置:首页 > 房产 > 家装 > 怎么外贸网站推广_中央人民政府网复合酶_百度云网盘资源搜索_重庆seo整站优化系统

怎么外贸网站推广_中央人民政府网复合酶_百度云网盘资源搜索_重庆seo整站优化系统

2024/12/23 10:08:24 来源:https://blog.csdn.net/wolf23151269/article/details/143978825  浏览:    关键词:怎么外贸网站推广_中央人民政府网复合酶_百度云网盘资源搜索_重庆seo整站优化系统
怎么外贸网站推广_中央人民政府网复合酶_百度云网盘资源搜索_重庆seo整站优化系统
打包后运行 Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributesat java.base/sun.security.util.SignatureFileVerifier.processImpl(SignatureFileVerifier.java:347)at java.base/sun.security.util.SignatureFileVerifier.process(SignatureFileVerifier.java:289)at java.base/java.util.jar.JarVerifier.processEntry(JarVerifier.java:327)at java.base/java.util.jar.JarVerifier.update(JarVerifier.java:239)at java.base/java.util.jar.JarFile.initializeVerifier(JarFile.java:761)at java.base/java.util.jar.JarFile.ensureInitialization(JarFile.java:1037)at java.base/java.util.jar.JavaUtilJarAccessImpl.ensureInitialization(JavaUtilJarAccessImpl.java:72)at java.base/jdk.internal.loader.URLClassPath$JarLoader$2.getManifest(URLClassPath.java:883)at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:848)at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525)at java.base/java.lang.Class.forName0(Native Method)at java.base/java.lang.Class.forName(Class.java:467)at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:800)at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:695)

日常踩坑 IDE 正常运行  打包后服务器直接报错 最终无法找到代码修改的具体解决办法

IDE 能正常运行但打包后的 .jar 文件报错,通常是因为在 IDE 环境中,所有依赖和配置都是直接在开发环境加载的。而在打包成 .jar 文件时,可能会遇到签名、依赖冲突或编译配置不一致的问题。

临时解决方法

如果你需要快速验证 .jar 文件是否能正常运行,而不依赖签名的完整性,可以尝试以下方法移除 .jar 中的签名文件:

1. 解压生成的 .jar 文件。

2. 删除 META-INF 文件夹中的 .SF、.DSA 或 .RSA 文件。

3. 重新打包 .jar 文件:

#!/bin/bash# 定义 JAR 文件路径和目标文件夹
JAR_FILE="target/project-*.jar"
TARGET_DIR="test"# 清理旧的打包文件
echo "Cleaning up old JAR files..."
rm -rf target/projecttest.jar# 解压 JAR 文件
echo "Unzipping JAR file..."
unzip -o $JAR_FILE -d $TARGET_DIR# 进入解压后的目录
cd $TARGET_DIR# 删除不需要的签名文件
echo "Removing unnecessary signature files..."
rm -rf META-INF/*.SF
rm -rf META-INF/*.DSA
rm -rf META-INF/*.RSA# 返回上级目录
cd ..# 重新打包 JAR 文件,并生成新的 MANIFEST.MF
echo "Repacking JAR file..."
jar cmvf $TARGET_DIR/META-INF/MANIFEST.MF target/projecttest.jar -C $TARGET_DIR .# 清理解压后的临时文件夹
echo "Cleaning up temporary files..."
rm -rf $TARGET_DIR/*# 打印完成信息
echo "JAR file repackaged successfully!"

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com