0

私はSCPクライアントアプリケーションを作成しており、ant-jschを使用してファイルをリモートサーバーにscpしています。Scpクライアントは私のデバッグ設定(Eclipse設定)で正常に動作します。ファイルがリモートサーバーにコピーされます。

しかし、コードをサーバーに配置してscpクライアントを実行しようとすると、次のエラーが発生します

Exception in thread "Thread-6:159-1" java.lang.NoClassDefFoundError: org/apache/tools/ant/Task
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:632)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:616)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)

jarファイルは適切な場所にあり、クラスパスがエクスポートされると、それらのjarファイルを確認できます。org.apache.tools.ant.Taskがscpクラス(org.apache.tools.ant.taskdefs.optional.ssh.Scp)自体ではなく、クラスが見つかりません。

これは、Eclipseがそれ自体で解決した依存関係が原因であり、アプリケーションサーバーで手動で解決する必要がありますか?

よろしく
DheerajJoshi

4

2 に答える 2

1

はいant.jarは、scpコマンドを実行するクラスパスに含まれている必要があります

于 2012-08-09T06:26:16.980 に答える
0

解決策を見つけました。これを実行するには、ant-1.6.jarが必要です。ant.jarだけではありません

于 2012-08-10T04:37:09.777 に答える