- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试使用 SSHJ 登录其他机器。下面的 PFA 代码(不包括 try/catch/finally block )。
Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
final SSHClient sshClient = new SSHClient();
sshClient.addHostKeyVerifier(new PromiscuousVerifier());
sshClient.connect("test-hostname");
sshClient.authPublickey("test-user", private_key_path);
Session session = sshClient.startSession();
Session.Command cmd = session.exec(TEST_SSH_COMMAND);
cmd.join(5, TimeUnit.SECONDS);
if(cmd.getExitStatus() == 0) {
System.out.println("Success");
}
当我尝试执行上述程序时,出现以下错误
[reader] n.s.sshj.transport.TransportImpl - Dying because -net.schmizz.sshj.transport.TransportException: Unable to reach a settlement: [] and [aes128-ctr, aes192-ctr, aes256-ctr, arcfour256, arcfour128, aes128-cbc, 3des-cbc, blowfish-cbc, cast128-cbc, aes192-cbc, aes256-cbc, arcfour, rijndael-cbc@lysator.liu.se]
2014-07-01 20:45:09,021 INFO [reader] n.s.sshj.transport.TransportImpl - Disconnected - UNKNOWN
2014-07-01 20:45:09,023 ERROR [pool-3-thread-1] net.schmizz.concurrent.Promise - <<kex done>> woke to: net.schmizz.sshj.transport.TransportException: Unable to reach a settlement: [] and [aes128-ctr, aes192-ctr, aes256-ctr, arcfour256, arcfour128, aes128-cbc, 3des-cbc, blowfish-cbc, cast128-cbc, aes192-cbc, aes256-cbc, arcfour, rijndael-cbc@lysator.liu.se]
2014-07-01 20:45:09,024 信息 [pool-3-thread-1] n.s.sshj.transport.TransportImpl - 已断开连接 - BY_APPLICATION
有人可以帮我调试这个问题吗?
谢谢。
最佳答案
我遇到了同样的问题,这是一个类加载问题。另一个库 (winzipaes) 依赖于另一个版本 auf BouncycaSTLe (bcprov-jdk16),该版本似乎与 SSHJ 引用的 jdk15 版本有冲突。
明确排除 jdk16 版本对我有帮助(但是我还没有测试使用 winzipaes 的代码)。
关于java - net.schmizz.sshj.transport.TransportException : Unable to reach a settlement,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24519462/
我下面的代码抛出以下错误,我只能在 Google 上找到涉及日志记录错误的信息,但没有任何内容看起来像我的。我已经尝试安装中央 Maven 存储库所需的依赖项,但问题仍然存在。有谁知道为什么我上课没有
目前我正在使用 ssh 执行命令: val sshCmd = session.exec(command) println(IOUtils.readFully(sshCmd.inputStream).t
我使用 SSHJ 执行一些命令,我使用这种方法: private Command executeCommand(String command, SSHClient client) {
有人可以给我一个使用 SSHJ 进行公钥身份验证的示例吗?我意识到这个问题本质上与 ssh example of private/public key authentication 相同,然而作者的回
我想创建一个 Java 应用程序以使用 ssh 连接到我的远程 Linux 服务器。有人可以给我发送一些文档或教程以在 eclipse 中开始使用 sshj(我在 Windows 环境中工作)。 最佳
我正在使用 SSHJ 执行远程命令,当主机位于 SSH known_hosts 文件中时,我可以成功执行此操作。但是,如果主机不在此文件中,那么我希望用户可以选择添加它。 我相信这样做的方法是创建自定
在 Eclipse 中测试 SSHJ,一切看起来都很好。但是当我使用 Maven Shade 插件打包 SSHJ 时,出现以下错误: Exception in thread "main" net.sc
我从控制台启动了一个 jar,它运行良好: nohup /usr/bin/java -jar payara-micro-5.183.jar myapp.war > log.out 2>&1 & ech
我正在使用 java 的 sshj 库。 我需要在远程服务器上打开一个 ssh session ,执行一个可能运行几分钟的命令,然后继续在我的 java 代码中执行。一旦远程服务器上运行的命令完成,我
我正在这样做,它工作正常,但我希望能够在 22 以外的端口上访问 sshd。 final SSHClient ssh = new SSHClient(); ssh.addHostKeyVerifi
我需要通过 sshj 执行 shell 脚本并在不等待脚本完成的情况下断开连接。该脚本可能需要很长时间才能完成,因此我将创建额外的 Java 代码来定期检查脚本的结果。如何在不等待 shell 脚本完
本文整理了Java中net.schmizz.sshj.transport.compression.ZlibCompression类的一些代码示例,展示了ZlibCompression类的具体用法。这些
使用 SSHJ 时出现异常。 这是我如何实现它: public static void main(String[] args) throws IOException { // TODO Aut
如何使用 sshj java api 通过用户名和密码连接到远程计算机? 我尝试了这段代码。这段代码有什么问题? final SSHClient ssh = new SSHClient();
我正在使用 sshj 连接到远程计算机以检索各种值。据我在 sshj 中的理解,当我执行以下代码来检索远程计算机的主机名时: SSHClient sshClient = new SSHClient()
您将如何获得 sshj安装,考虑到我在 ubuntu 上使用 Eclipse?我已经 2 年没有用 Java 做过任何事情,我唯一记得的是如何将 jar 文件添加到项目中,但对于 sshj,我只有 .
我正在尝试创建一个隧道以使用支持 SSH 的防火墙后面的服务。我想要一个完整的 java 解决方案,但我似乎无法让它工作。我找到了这个 github snip并基于此我创建了以下代码来保持后台线程给我
我正在编写一个 Java 程序,它可以通过编程方式通过 SSH 连接到任何远程机器并执行命令。我正在重新使用现有的 Java 库来这样做:https://github.com/shikhar/sshj
我使用 sshj 库从我的 Java 应用程序与 Linux 进行通信。我需要使用命令更改用户:su SSHClient ssh = new SSHClient(); ssh.connect(host
我正在尝试使用 sshj 为 android 编写一个 ssh 应用程序。我可以连接到服务器并毫无问题地从输入流中读取,得到如下内容: Welcome to Ubuntu 12.04.1 LTS (G
我是一名优秀的程序员,十分优秀!