制作一个基本的Kotlin SSH应用程序,每次崩溃

我只是学习,所以我想获得一个非常基本的SSH查询应用程序来编译。 它应该什么也不做,只有一个LS。

package com.android.myself.sshtestkotlin import android.support.v7.app.AppCompatActivity import android.os.Bundle import android.widget.Toast import net.schmizz.sshj.SSHClient import net.schmizz.sshj.common.IOUtils class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val sshConnection = SSHClient() sshConnection.connect("localhost") sshConnection.authPassword("uid", "password") Toast.makeText(this@MainActivity, "failed.", Toast.LENGTH_SHORT).show() val session = sshConnection.startSession() Thread.sleep(1000) val cmd = session.exec("ls") val tempNum = IOUtils.readFully(cmd.getInputStream()).toString() sshConnection.disconnect() Toast.makeText(this@MainActivity, tempNum, Toast.LENGTH_SHORT).show() } } 

我已经做了几个变化与按钮启动连接等…但没有运气。 它以任何方式调用SSH的那一刻它崩溃。

我测试了2个不同的虚拟设备和两个运行android studio的不同的电脑,但没有运气。

make文本只是作为调试,告诉我它在哪里破坏,但他们从来没有出现。

我尝试了与JSCH相同的错误。

 buildscript { ext.kotlin_version = '1.2.21' repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.0.1' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { google() jcenter() } } task clean(type: Delete) { delete rootProject.buildDir } 

弄清楚了。 通过verion 0.9.0的SSHj不能用于某些安全性。 加上编译“ch.qos.logback:logback-classic:1.1.2”compile“org.bouncycastle:bcprov-jdk15on:1.57”

解决了日志问题。