2011-09-27 62 views
3

我嘗試將Jsch 0.1.44與Maven一起使用。Jsch和Maven有什麼問題?

我在我的pom.xml中有以下依賴項。

<dependency> 
    <groupId>com.jcraft</groupId> 
    <artifactId>jsch</artifactId> 
    <version>0.1.44</version> 
    <scope>compile</scope> 
</dependency> 

如果我運行mvn compile行家看起來正常,並告訴我,Jsch已成功下載。

但是在編譯時,找不到Jsch類。如果我看看我的本地存儲庫,我可以看到Jsch-jar只有3kb的大小。如果我打開jar文件,我也可以看到只有META-INF文件夾。

那麼這裏有什麼問題,我該如何解決這個問題?

回答

4

出於某種原因,中央存儲庫中的jar文件似乎已損壞。 解決方案是爲jsch添加另一個存儲庫到pom.xml。

<repository> 
    <id>Jsch</id> 
    <url>http://jsch.sf.net/maven2/</url> 
</repository> 
4

有不同的可能性:

  • 你使用了正確的Maven倉庫爲jsch(似乎是這樣的一個:http://mvnrepository.com/artifact/com.jcraft/jsch/0.1.44-1),但下載停止無論出於何種原因。發生這種情況,您只需通過刪除jsch的目錄或僅刪除版本來清除本地存儲庫。它會重新加載。
  • 也許你錯誤地配置了你的遠程倉庫jsch,並且jsch被佔用的地方,但不是庫,只有元數據。我不知道是否有可能從哪個位置看到錯誤的圖書館。

你應該看看你的settings.xml(對於Maven或你的用戶),看看版本庫是否被正確指定。

你應該檢查命令

mvn dependency:get -DrepositoryUrl=http://mvnrepository.com/artifact/ \ 
        -DgroupId=com.jcraft -DartifactId=jsch -Dversion=0.1.44 \ 
        -Dtransitive=false 

正常工作。

+1

+1和感謝爲你的答案。一個評論你的最後一個命令。它不起作用。給我''錯誤]無法在插件org.apache.maven.plugins中找到目標'下載':maven-plugin-plugin:2.9' – flash

+0

感謝您的反饋。我得到的下載錯誤(僅Maven 1),並已糾正它,希望現在可以運行。似乎錯誤是原始內容不包含:-) – mliebelt