我正在编写一个 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 文件。I am not class not found 是针对 org.apache.tools.ant.Task 而不是针对 scp 类 (org.apache.tools.ant.taskdefs.optional.ssh.Scp) 本身。
这是因为 Eclipse 自行解决的任何依赖关系,我需要在我的应用程序服务器中手动解决它吗?
问候
Dheeraj Joshi