Java编译错误无效的结束标头(错误的中央目录偏移量)

Java编译错误无效的结束标头(错误的中央目录偏移量),java,Java,我已经编写了一个简单的java程序,下面是jar文件 commons-logging-1.2.jar commons-lang-2.6.jar commons-configuration-1.9.jar commons-collections4-4.4.jar 我将这些文件放在我的lib文件夹路径中,并在.profile文件中设置CLASSPATH变量。 还授予所有jar文件的执行权限。 但在编译我的java文件时仍然出现以下错误 错误:读取/app/produagg/aggregator/ja

我已经编写了一个简单的java程序,下面是jar文件 commons-logging-1.2.jar commons-lang-2.6.jar commons-configuration-1.9.jar commons-collections4-4.4.jar 我将这些文件放在我的lib文件夹路径中,并在.profile文件中设置CLASSPATH变量。 还授予所有jar文件的执行权限。 但在编译我的java文件时仍然出现以下错误

错误:读取/app/produagg/aggregator/java/lib/commons-logging-1.2.jar时出错;无效的结束标头错误的中央目录偏移量 错误:读取/app/produagg/aggregator/java/lib/commons-lang-2.6.jar时出错;无效的结束标头错误的中央目录偏移量 错误:读取/app/produagg/aggregator/java/lib/commons-configuration-1.9.jar时出错;无效的结束标头错误的中央目录偏移量 错误:读取/app/produagg/aggregator/java/lib/commons-collections4-4.4.jar时出错;无效的结束标头错误的中央目录偏移量

为什么会出现这种错误?
该程序在开发、SIT和预生产环境中运行良好。

很可能您的JAR文件已损坏。检查commons-logging-1.2.jar的大小。它应该是61829字节

%wget-S-O/dev/null'https://repo1.maven.org/maven2/commons-logging/commons-logging/1.2/commons-logging-1.2.jar'2>&1 | fgrep内容长度: 内容长度:61829 MD5总额应为040B4D8EAC886F6B4A2A3BD2F31B00:

%md5sum commons-logging-1.2.jar 040b4b4d8eac886f6b4a2a3bd2f31b00 commons-logging-1.2.jar
很难说,但我调试的第一步是转到该目录,检查jar文件是否有效、是否被截断、是否丢失或是否被其他数据覆盖。为什么要在每个环境中编译源代码?将源代码编译一次(最好是在具有可预测配置的构建服务器上),并使用类或更好的方法生成一个jar文件,其中包含整个可部署的部署单元,如.tar.gz、.rpm、Docker映像等,然后将其部署到每个环境中。