2013-12-14 133 views
3

我有取決於以下神器項目:Maven的下載損壞罐子

<dependency> 
     <groupId>com.jaspersoft.jasperserver</groupId> 
     <artifactId>jasperserver-common-ws</artifactId> 
     <version>5.0.1</version> 
    </dependency> 
    <dependency> 
     <groupId>com.jaspersoft.jaspersoft.api.metadata</groupId> 
     <artifactId>jasperserver-api-metadata</artifactId> 
     <version>5.0.1</version> 
    </dependency> 
    <dependency> 
     <groupId>com.jaspersoft.jasperserver</groupId> 
     <artifactId>jasperserver-ireport-plugin</artifactId> 
     <version>3.7.0</version> 
    </dependency> 
    <dependency> 
     <groupId>net.sf.jasperreports</groupId> 
     <artifactId>jasperreports</artifactId> 
     <version>5.0.1</version> 
    </dependency> 

    <dependency> 
    <groupId>jasperreports</groupId> 
    <artifactId>jasperreports</artifactId> 
    <version>5.0.1</version> 
</dependency> 

當我運行

maven install eclipse

輸出警告指定檢驗和驗證失敗。當我嘗試使用winrar打開安裝的jar時,win-rar表明它們已損壞。我試圖關閉殺毒軟件,但仍然無法正常下載。

+0

同樣的問題在這裏,花了我很多時間。在嘗試設置SrpingBootTest模式來運行JPA集成測試時,許多hirbater庫和sping-jdbc jar被破壞。 Eclipse和Maven插件不會抱怨這個問題。你會發現當你試圖讓自動完成工作,並且自動完成機制會導致異常情況發生時會出現問題。或者當您嘗試鑽入某個類時,您會看到eclipse編輯器錯誤。你會去你的maven文件夾,並看到該文件完全損壞。我希望maven刪除JAR&ReportError – 99Sono

回答

1

這是一個網絡問題,或者(很可能)原始jar文件被損壞。

嘗試使用不同的http客戶端下載原始jar,因爲maven有(它不是最好的)。它顯示了實際罐子的下載URL。

如果可行,那麼一個簡單的解決方法是,您只需下載一個工作的http客戶端的jar,並將其放置在您的存儲庫中。


作爲一個長期的解決方案,我建議您的網絡環境的一些測試,你的Maven倉庫的也許完全再生。

+0

它只是沒有下載這些罐子沒有更多,所以我不認爲這個問題是在網絡環境中,你是什麼意思,由不同的http客戶端我使用m2e不是一個瀏覽器。如果原始jar文件損壞,該如何解決。我可以更改存儲庫嗎,任何人都可以嘗試下載這些依賴項來測試它們。 –

3

我有同樣的問題,結果是因爲其中一個存儲庫返回的是HTML而不是jar文件。當我在Notepad ++中查看損壞的jar時,這變得很明顯。在我的情況下,從POM中刪除以下回購修復問題:

 <repository> 
     <id>sibboleth</id> 
     <name>Sibboleth</name> 
     <url>http://shibboleth.internet2.edu/downloads/maven2/</url> 
     <layout>default</layout> 
    </repository> 
+0

是的,我面臨同樣的問題。但如何我可以確定哪些回購我必須刪除,如果我需要依賴從回購我該怎麼辦? –