【发布时间】:2010-07-05 12:15:13
【问题描述】:
作为我的 Eclipse 插件的一部分,我尝试使用 process.exec 启动一个外部程序。这适用于某些工具(例如,我使用 gedit 对其进行了测试),但对于我需要的工具它不起作用:isimgui: cannot connect to X server。
这是 XILINX webpack 的一部分,没有一个包含的图形工具可以这样启动。
我是如何认识的有什么想法让它发挥作用吗?
【问题讨论】:
作为我的 Eclipse 插件的一部分,我尝试使用 process.exec 启动一个外部程序。这适用于某些工具(例如,我使用 gedit 对其进行了测试),但对于我需要的工具它不起作用:isimgui: cannot connect to X server。
这是 XILINX webpack 的一部分,没有一个包含的图形工具可以这样启动。
我是如何认识的有什么想法让它发挥作用吗?
【问题讨论】:
您可能需要将 -display 参数传递给您正在运行的可执行文件,或者更好(更广泛支持)将环境变量 DISPLAY 设置为正确的值(尝试 ':0')
例如使用:process.exec(String[] cmdarray, String[] envp)
envp 至少应包含一个字符串“DISPLAY=:0”
【讨论】:
您必须从您的 shell 继承 DISPLAY 变量(可能还包括 X11 身份验证文件信息)。
【讨论】: