Java:Linux上java -jar xxx.jar命令執行jar包時出現Error: Invalid or corrupt jarfile xxx.jar解決方案


背景:

從ftp上上傳jar包到linux上,之后在linux上通過ftp命令下載jar包文件,開始執行Java-jar,一直提示錯誤:Error: Invalid or corrupt jarfile xxx.jar

但是,本地在cmd下執行通過。

本來我們是打算通過yarn jar或者hadoop jar來執行命令一個hdfs文件操作的功能,但是一直提示:

[c@v0283~]$ hadoop jar /app/c/h_ConvertHdfsZipFileToGzipFile.jar
WARNING: Use "yarn jar" to launch YARN applications.
Exception in thread "main" java.io.IOException: Error opening job jar: /app/c/H_ConvertHdfsZipFileToGzipFile.jar
        at org.apache.hadoop.util.RunJar.run(RunJar.java:160)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
Caused by: java.util.zip.ZipException: invalid END header (bad central directory offset)
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(ZipFile.java:219)
        at java.util.zip.ZipFile.<init>(ZipFile.java:149)
        at java.util.jar.JarFile.<init>(JarFile.java:166)
        at java.util.jar.JarFile.<init>(JarFile.java:103)
        at org.apache.hadoop.util.RunJar.run(RunJar.java:158)
        ... 1 more

解決方案:

wget ftp://ip:port/software/os/ubuntu12.04/ubuntu-12.04.1-server-amd64.iso --ftp-user=username --ftp-password=password

問題原因分析:

ftp下載過程中修改了jar文件的格式問題導致,而wget可以確保格式不受損。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM