Could not load a dependent class com/jcraft/jsch/Logger

Dims picture Dims · May 24, 2013 · Viewed 15.3k times · Source

While trying to execute target in Eclipse's ant, containing scp task, I am getting an error

BUILD FAILED
D:\Users\Dims\Design\liferay-plugins-sdk-6.1.1-tomcat-6.0.37-x64-liferay-6.1-GA2\portlets\scisbo-portlet\build.xml:11: Problem: failed to create task or type scp
Cause: Could not load a dependent class com/jcraft/jsch/Logger
       It is not enough to have Ant's optional JARs
       you need the JAR files that the optional tasks depend upon.
       Ant's optional task dependencies are listed in the manual.
Action: Determine what extra JAR files are needed, and place them in one of:
        -D:\APPS\eclipse-liferay-ide\plugins\org.apache.ant_1.8.2.v20120109-1030\lib
        -C:\Users\dims\.ant\lib
        -a directory added on the command line with the -lib argument

Do not panic, this is a common problem.
The commonest cause is a missing JAR.

This is not a bug; it is a configuration problem

I have done what it is written here and put JAR file

D:\...eclipse-liferay-ide\plugins\org.apache.ant_1.8.2.v20120109-1030\lib>dir
ant-antlr.jar         ant-apache-oro.jar       ant-commons-logging.jar  ant-jdepend.jar  ant-junit4.jar    ant-testutil.jar
ant-apache-bcel.jar   ant-apache-regexp.jar    ant-commons-net.jar      ant-jmf.jar      ant-launcher.jar  ant.jar
ant-apache-bsf.jar    ant-apache-resolver.jar  ant-jai.jar              ant-jsch.jar     ant-netrexx.jar   ecj.jar
ant-apache-log4j.jar  ant-apache-xalan2.jar    ant-javamail.jar         ant-junit.jar    ant-swing.jar     jsch-0.1.50.jar

but this didn't help.

com/jcraft/jsch/Logger.class file is inside this JAR.

Answer

Nicolas Lalevée picture Nicolas Lalevée · May 24, 2013

The way you try to fix the classpath is the way to do when using a standalone Ant. Here is it managed by Eclipse.

You can still contribute to the classpath of Ant. Just go into the Eclipse Preferences, in the Ant/Runtime entry, in the 'Classpath' tab. Use the button 'Add External Jars' to add your jsch.jar to Ant's classpath.