4

Jsch 0.1.44 を Maven と一緒に使用しようとしています。

pom.xml に次の依存関係があります。

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

Mavenを実行するmvn compileと、正常に見え、Jsch のダウンロードが成功したことがわかります。

しかし、コンパイルに関しては、Jsch クラスが見つかりませんでした。ローカル リポジトリを調べると、Jsch-jar のサイズが 3kb しかないことがわかります。jar ファイルを開くと、META-INF フォルダーしかないこともわかります。

ここで何が問題なのですか、どうすれば修正できますか?

4

3 に答える 3

4

何らかの理由で、中央リポジトリのjarファイルが壊れているようです。解決策は、Jschの別のリポジトリをpom.xmlに追加することです。

<repository>
    <id>Jsch</id>
    <url>http://jsch.sf.net/maven2/</url>
</repository>
于 2011-09-28T05:36:51.247 に答える
4

さまざまな可能性があります。

  • 正しいMavenリポジトリを使用しましたjsch(これは次のようです:http://mvnrepository.com/artifact/com.jcraft/jsch/0.1.44-1)が、何らかの理由でダウンロードが停止しました。jschこれが発生し、ディレクトリまたはバージョンのみを削除して、ローカル リポジトリをクリアする必要があります。再度リロードされます。
  • おそらく、リモート リポジトリの設定を誤ってjschjschライブラリではなく、メタ データのみがどこかに保持されている可能性があります。どの場所から間違ったライブラリを取得したかを確認できるかどうかはわかりません。

(Maven またはユーザーの場合) を見settings.xmlて、リポジトリが正しく指定されているかどうかを確認する必要があります。

コマンドかどうかを確認する必要があります

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

正常に動作します。

于 2011-09-27T16:57:29.963 に答える
4

0.1.44 バージョンが壊れています (3KB しかありません)

http://mvnrepository.com/artifact/com.jcraft/jsch/0.1.44

代わりにhttp://mvnrepository.com/artifact/com.jcraft/jsch/0.1.44-1を使用してください

POM を次のように更新します。

<dependency>
  <groupId>com.jcraft</groupId>
  <artifactId>jsch</artifactId>
  <version>0.1.44-1</version>
</dependency>
于 2014-11-08T01:14:38.000 に答える