【问题标题】:java scp file using ganymed-ssh2 package使用 ganymed-ssh2 包的 java scp 文件
【发布时间】:2011-05-11 19:28:45
【问题描述】:

我正在使用 eclipse 进行开发,并且我已将包包含在构建路径中,但仍然出现此错误。

HTTP Status 500 - 

--------------------------------------------------------------------------------

type Exception report

message 

description The server encountered an internal error () that prevented it from fulfilling this request.

exception 

javax.servlet.ServletException: Servlet execution threw an exception


root cause 

java.lang.NoClassDefFoundError: ch/ethz/ssh2/Connection
    Push_Individual_Engine.putFile(Push_Individual_Engine.java:107)
    Push_Individual_Engine.doPost(Push_Individual_Engine.java:80)
    Push_Individual_Engine.doGet(Push_Individual_Engine.java:47)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


root cause 

java.lang.ClassNotFoundException: ch.ethz.ssh2.Connection
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647)
    org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1493)
    Push_Individual_Engine.putFile(Push_Individual_Engine.java:107)
    Push_Individual_Engine.doPost(Push_Individual_Engine.java:80)
    Push_Individual_Engine.doGet(Push_Individual_Engine.java:47)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.30 logs.


--------------------------------------------------------------------------------

Apache Tomcat/6.0.30

这是我正在使用的代码,

private void putFile(File f){
        Connection Conn = null;
          try {


           Conn = new Connection("servername");
           ConnectionInfo info = Conn.connect();
           Conn.authenticateWithPassword("username" , "password");
           SCPClient SCP = new SCPClient(Conn);

           SCP.put(f.toString(), "foldername", "0755");
           Conn.close();
          } catch (Exception e) {
           try {
            Conn.close();
           } catch (Exception e1) {}
    }
    }

有什么想法吗?

【问题讨论】:

    标签: tomcat noclassdeffounderror


    【解决方案1】:

    相关的jar文件(包含找不到的类)需要放在你的webapp的WEB-INF/lib目录下。仅仅将其添加到您的构建路径是不够的。

    【讨论】:

    • 非常感谢队友...它帮助我摆脱了错误,但是当我尝试运行 servlet 文件(正在执行 scp 操作)时,它提示我“保存文件”对话框。有什么想法吗?!
    • 我建议您将其作为一个新问题提出。
    猜你喜欢
    • 2011-08-26
    • 1970-01-01
    • 2016-04-29
    • 1970-01-01
    • 2019-06-15
    • 1970-01-01
    • 2018-03-08
    • 1970-01-01
    • 2011-06-21
    相关资源
    最近更新 更多