我需要ikeyman
在 IBM HTTP Server 上执行。因为我不想在服务器上安装完整的 UI,所以我使用 MobaXterm 和 x 转发为 Windows 工作站。当作为普通用户(例如/opt/IBM/HTTPServer/bin/ikeyman
)执行时,它可以工作。对于某些文件夹中的相应权限,ikeyman
需要以root身份运行:
sudo -i
/opt/IBM/HTTPServer/bin/ikeyman
Exception in thread "main" java.awt.HeadlessException:
No X11 DISPLAY variable was set, but this program performed an operation which requires it.
at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:217)
at java.awt.Window.<init>(Window.java:547)
at java.awt.Frame.<init>(Frame.java:431)
at java.awt.Frame.<init>(Frame.java:396)
at javax.swing.JFrame.<init>(JFrame.java:200)
at com.ibm.gsk.ikeyman.gui.KeymanFrame.<init>(KeymanFrame.java)
at com.ibm.gsk.ikeyman.gui.KeymanFrame.<init>(KeymanFrame.java)
at com.ibm.gsk.ikeyman.Ikeyman.main(Ikeyman.java)
不工作:
sudo DISPLAY=localhost:10.0 /opt/IBM/HTTPServer/bin/ikeyman
(该DISPLAY
值是从普通用户那里复制的)xauth add $(xauth -f /home/user/.Xauthority list | tail -1 )
export DISPLAY=localhost:10.0 /opt/IBM/HTTPServer/bin/ikeyman```