0

Ganymed ,execCommand("java -version") Tips:bash: java: command not found 但是我用的是Shell工具,可以获取java版本。ganymed获取不到本地环境变量?我该怎么做?

4

1 回答 1

0

这个问题的原因是缺少环境变量。你可以试试下面的代码来解决。

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();
        }
    }
}
于 2019-01-30T02:36:48.113 回答