gpt4 book ai didi

java - SSH shell 异常

转载 作者:太空宇宙 更新时间:2023-11-04 11:28:55 24 4
gpt4 key购买 nike

我有一个问题。我创建了一个简单的程序,通过 ssh 连接到我的树莓派,但出现了异常:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/io/input/NullInputStream at Main.main(Main.java:6) Caused by: java.lang.ClassNotFoundException: org.apache.commons.io.input.NullInputStream at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 1 more`

代码:

import com.jcabi.ssh.SSH;
import com.jcabi.ssh.Shell;

class Main{
public static void main(String[] args) throws Exception{
String hello = new Shell.Plain(
new SSH(
"192.168.1.19", 22,
"pi", "raspberry"
)
).exec("echo 'Hello, world!'");
}
}

最佳答案

您似乎正在发送用户名和用户密码作为参数,但根据文档,该库需要 RSA key 。

使用 SSHByPassword

http://ssh.jcabi.com/apidocs-1.5/com/jcabi/ssh/SSHByPassword.html

像这样:

private String address;
private int port;
private String user;
private String password;

/**
* @param address - server IP
* @param port - SSH port
* @param user - login user
* @param password - user password
*/

public SSHcommunicator(String address, int port, String user, String password) {
this.address = address;
this.port = port;
this.user = user;
this.password = password;
}

public String sayHello() throws IOException {

Shell shell = new SSHByPassword(address, port, user, password);
return new Shell.Plain(shell).exec("echo 'Hello, world!'");
}

关于java - SSH shell 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44025806/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com