实例化(空)构造函数的应用程序崩溃

时间:2019-05-02 15:24:50

标签: java android ant extension-methods runtimeexception

我正在创建一个 Android 扩展,该扩展旨在基于众所周知的JSch库连接到远程SSH主机,以便一旦按下按钮,就可以实例化该类。方式,出现编译错误:

JSch jsch = new JSch();

...但是,应用程序崩溃了!

查看 JSch()构造函数,里面没有任何内容:

public JSch(){
// here there are several commented instructions that need to be
// used just at MAC operational systems (not my OS).
}

如果我删除启动,编译器会抱怨变量 jsch 没有初始化。

JSch jsch;

一旦我使用 Apache Ant 进行编译,便没有可用于跟踪运行时错误的调试资源。

所有测试都在线程或回调方法中进行,给出相同的结果;我根本无法启动jsch变量,这会产生运行时异常 com.jcraft.jsch.JSch 。 有人对如何解决该问题有见识吗?

1 个答案:

答案 0 :(得分:0)

我能够安装 Android SDK工具,并通过 ADB logcat> file.txt 命令捕获日志后,以下句子多次出现:

  

java.lang.NoClassDefFoundError:com.jcraft.jsch.JSch

这意味着用apache命令 ant extensions 编译的扩展文件(.aix)没有在其中嵌入上述类。 这就完全解释了这个问题(在构造函数上实例化时应用崩溃)-下一步是发现如何封装依赖关系-如果我不能自己做的话,一定将其封装在另一个线程中。