将 Java jar 显示转发到另一台计算机

将 Java jar 显示转发到另一台计算机

我有一个使用 X11 转发的 Web 服务器,我ssh -Y进入该服务器是为了激活 Rails 应用程序。该应用程序包含对 jar 文件的系统调用,该文件将显示在我的计算机上:

def executeJar
    value = %x( {PATH TO JAVA} -jar {PATH TO JAR} )
end

link_to我使用html.erb 中的一个简单标签调用此链接。

我的问题是 GUI 只出现在我的屏幕上,而不是我希望的其他屏幕上。(即,如果另一台计算机上的某人单击该链接,GUI 将显示在我的屏幕上,而不是他们的屏幕上。)

我能做些什么来改变 GUI 出现的位置?

答案1

这是非常不寻常的,因为 Web 应用程序通常不与 X11 交互。

如果您查看传入的 IP 地址,您可能能够设置$DISPLAY环境变量,<client IP address>:0然后像以前一样运行 Java 程序。

但这假设了以下几点:

  1. Web 客户端未位于会阻止端口 6000(或 6000 加上显示数字)上 TCP 的防火墙后面。
  2. 该显示0是正确的。(通常是正确的,但并非总是如此。)
  3. Web 客户端正在运行 X11,并将其配置为接受来自服务器的连接。通常情况并非如此。

相关内容