Ganymed SSH2 JAVA, советы: Команда не найдена - PullRequest
0 голосов
/ 22 января 2019

Ganymed , execCommand ("Java-версия") Советы: bash: java: команда не найдена Но я использую инструмент Shell, я могу получить версию Java。 Ганимед не может получить локальные переменные среды? Как я могу это сделать?

1 Ответ

0 голосов
/ 30 января 2019

Причиной этой проблемы является отсутствие переменных среды.Вы можете попробовать следующий код для решения.

public void execNoReturnRemoteCommand(String command, long timeout)
        throws Exception {
    Connection conn = getConnection();
    Session session = null;
    try {
        session = conn.openSession();
        session.requestPTY("bash");
        session.startShell();
        PrintWriter out = new PrintWriter(session.getStdin());
        out.println(command);
        out.println("exit");
        out.close();
        session.waitForCondition(ChannelCondition.CLOSED | ChannelCondition.EOF | ChannelCondition.EXIT_STATUS, timeout*1000);
    } finally {
        if (session != null) {
            session.close();
        }
        if (conn != null) {
            conn.close();
        }
    }
}
...