我正在尝试运行一个GUI应用程序,触发从Windows localhost到SUSE Enterprise Sever 12版本的其他GUI应用程序。
我想使用JSch触发应用程序并让它在远程计算机上运行,即SuSe,并且不想将其转发到Windows。
使用普通.sh
文件触发时,应用程序会出错
无法初始化gtk +,显示设置是否正确?
如何在远程计算机上运行应用程序,在后台或前台无关紧要!
答案 0 :(得分:0)
我认为你不能(或不容易)。如果应用程序以需要“显示”的方式实现,则无法在没有应用程序的情况下运行它。请注意,当您通过SSH执行应用程序(即由SSH deamon启动)时,它不知道连接到远程计算机(服务器)的物理显示(如果有的话)。
有一种方法可以运行应用程序,使其不需要“显示”,但我们无法帮助您,因为我们不知道应用程序。
虽然一般情况下,* nix应用程序在具有TTY的会话中运行时往往需要“显示”。确保使用“exec”通道(而不是“shell”)执行应用程序,并且不要调用setPty
method。
但如果应用程序是一个真正的GUI应用程序,即使这样也无济于事。
当然,你可以以某种方式模仿显示,但这超出了我的知识。为此,您需要使用不同的标记(不是ssh / jsch,而是关于tty / pty / gtk来提出另一个问题。 )。