0
我有一個項目,使用gradle在maven回購中使用依賴關係。如何解決「不能讀取zip文件」的gradle依賴問題?
它已經工作了很多個月,但是當設置一臺新機器時,我無法編譯,錯誤地訪問一個依賴文件。
[ant:javac] error: error reading /Users/rayj/.gradle/caches/artifacts-4/com.google.guava/guava/c12498cf18507aa6433a94eb7d3e77d5/jars/guava-11.0.2.jar; cannot read zip file
I was able to reproduce on another machine by removing my gradle cache ("~/.gradle/caches/artifacts-4/").
我能夠確定「損壞的」jar文件具有與「非損壞的」jar文件不同的行爲。 對於「未損壞的」jar文件,我可以重命名爲「.zip」並提取zip以查看文件的內容(如預期的那樣)。 對於「損壞的」jar文件,如果我重命名爲「.zip」並解壓zip,則輸出是另一個jar文件(意外)。如果我再次重命名/提取,那麼它會正確提取文件的內容(預期)。
for each corrupt jar file {
rename to .jar to .zip and extract to create a new jar //this turns a corrupt jar into a non-corrupt jar)
}
這表明,問題是隻與一個jar文件是「腐敗」:
我可以手動解決此問題。
雖然這個工作,它是一個痛苦的分辨率自動構建=)
我在找一些指導,以什麼可能造成這一點,如何解決其根源問題。
聽起來很奇怪。您是否遇到與Gradle 1.0相同的問題? (你似乎正在使用相當老的Gradle版本。) –
thx,這看起來像這樣一個明顯的解決方案!如果你把它作爲一個「解決方案」,我會標記爲完整的。 – jayraynet