问题标签 [sshj]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Expectit 没有找到我期望的字符串
我正在尝试将 expectit 库与 sshj 一起使用,如下所示:
我正在执行的命令是“sleep 5; rm -i test.txt”,我得到以下输出:
有人会认为一切都应该正常工作,因为 LoggingAppendableAdapter 以及内部日志记录报告字符串“rm:删除常规空文件'test'?”。
关于我可能做错的任何建议?
sshj - SSHJ:exec 挂起或丢失数据
我已经使用 Trilead 和 Jsch 作为 Hg 的 SSH 客户端,现在我正在尝试使用 SSHJ,因为它似乎提供了更现代的密钥支持。草图代码如下
该startThreadToCopyInputStream
方法将所有字节从本地 Hg 进程复制到cmd.getOutputStream()
然后完成输入流。但与 Trilead 和 JSch 不同的是cmd.getInputStream()
,它们cmd.getErrorStream()
始终保持开放状态。
我现在将代码更改为:
这在 90% 的情况下都可以正常工作,但有时 Hg 会抱怨服务器提前关闭了连接。cmd.close()
由于服务器进程已完成,我应该如何知道何时可以调用?
java - 尝试使用 sshj 连接到远程服务器
我正在寻找使用 sshj 连接到远程服务器并执行一些命令。我要执行的命令按顺序排列: 1. 通过 putty 登录,输入用户名和密码 2. 然后 sudo su - oracle 3. 然后再次输入密码 4. 然后“sqlplus /nolog” 5. 然后“以 sysdba 身份连接” 6 . 然后是几个 sql 命令 7. 然后退出并执行 imdmp
我正在寻找最好/最简单的方法来解决这个问题。这是我到目前为止所做的。
一世
java - 无法达成和解:问题
我正在尝试为 sftp 创建 jar。我使用 SSHJ (0.23.0) 并且在测试服务器上一切正常,但问题是当我尝试在生产服务器上运行它时。
我的生产服务器上的 Java 版本是 7u60。
SSHJ 日志:
Jsch(在我的例子中是 0.1.54,Java 7u60)在测试服务器上也可以正常工作,但在生产服务器中它给了我以下例外:
Jsch日志:
我希望有一个人可以帮助我。
java - SSH 命令执行失败并出现异常 - “net.schmizz.sshj.connection.ConnectionException:抛出连接重置异常”
当通过 SSH 连接执行命令时,命令执行通常会失败并出现异常 - “net.schmizz.sshj.connection.ConnectionException: Connection reset Exception is throw”。
问题描述:
我使用 net.schmizz.sshj.SSHClient 创建了一个到主机的 SSH 连接实例。我使用这个 SSH 连接执行了一堆命令,最后关闭了连接。
在检查我的 java 代码执行日志时,我经常会看到错误
java代码执行将继续运行。
但是当使用 SSH 连接执行命令时,如果这个 java.net.SocketException: Connection reset Exception 来了,我的 java 代码执行就终止了。
问题:
SSH连接通常会断开并重新连接,但是当我通过此SSH连接执行命令时,如果发生断开连接,它永远不会重新连接net.schmizz.sshj.connection.ConnectionException:抛出连接重置异常。
我的查询:
如何克服我的 Java 代码中的 ssh 断开连接问题,尤其是在通过 SSH 连接执行命令时?
谢谢。
optimization - 如何避免 SFTP 上的重复文件处理
我们有一个 Java 应用程序,它每隔 30 分钟从客户端 FTP 轮询文件,然后扫描所有文件,查看所有文件与应用程序内部配置的模式匹配,并根据该模式相应地处理文件。这里的问题是我们必须每 30 分钟进行一次线性扫描,这花费了太多时间。由于我们不想处理重复的文件,所以我们在最后维护文件的哈希码,然后我们检查哈希码是否与现有的哈希码匹配。由于权限,无法删除已处理的文件。在此处需要有关如何优化此功能的帮助。
我们使用 SSHJ 库进行 SFTP 通信。
java - SSHJ:如何使用 StatefulSFTPClient
我很困惑......我正在使用 com/hierynomus/sshj SFTP-lib,下面的代码给了我 ClassCastException:
我需要 StatefulSFTPClient 但我不知道如何使用它...我是否需要扩展 SSHClient 类:
java - 使用 SSHJ 从 SFTP 下载文件并放入项目类路径并允许 MSSQLServeContainer 加载它
我正在与 docker 一起运行我的 DAO 单元测试,该测试会命中驻留在 docker 容器中的 SQLServer 数据库。
STEP1:我希望我将最新的 BAK 文件从我的远程服务器(安装了 docker 的 Linux 机器)拉到我的项目类路径(src/test/resources),这样我就可以在它开始之前使用 MSSQLServerContainer 来获取它容器。
所以我正在做一个 SSHJ 来获取如下文件:
并像下面这样启动容器:
所以现在我的问题是,它失败并出现以下错误:
似乎在容器启动之前它不会将文件刷新到类路径。有没有办法我可以在下面的行sftp.get(remoteServerFileLocation, "src/test/resources"); 被执行。以便在容器启动时它可以在类路径上使用。
在容器启动之前,它必须将 BAK 文件放入src/test/resources文件夹,以便它可以启动容器并从类路径中选择文件并运行单元测试。
java - 线程“阅读器”中的异常 java.lang.NoClassDefFoundError: org/bouncycastle/crypto/ec/CustomNamedCurves
我使用“net.schmizz.sshj.SSHClient”包连接到服务器。下面是我的代码:
但是,我遇到了一个错误:“线程中的异常”阅读器“java.lang.NoClassDefFoundError:org/bouncycastle/crypto/ec/CustomNamedCurves ”。我将 bcprov-jdk15on-1.49 和 bouncycastle.jar 添加到我的类路径中。请帮我解决这个错误。
完全例外: