由于我尝试在 Linux 上测试一个 Java 程序,该程序仅使用 Java 8 编译和创建。我尝试将 Debian 操作系统从 Java 7 升级到 Java 8。jar 文件无法在 Java7 上运行,但可以在更新了 Java 8 的 Windows 上运行。
似乎有不同的方法可以做到这一点,并且不知何故建议卸载旧的 java。卸载但我根本做不到。
就像在 Linux 存储库(也添加了新的)上一样,我找不到 Java 8,我尝试按照一些示例进行操作Java 安装,似乎只有提取 tar 才有效。然后我尝试关注这个帖子Linux 上的多个 Java 环境。使用我将 tar 解压到的另一个文件夹,而不是 /usr/lib/jvm 。
我使用了一些命令,并使用 java -version 显示正确的版本。但我尝试运行 jar 文件,它引发了异常和错误。
未指定协议线程“main”中出现异常 java.awt.AWTError:无法使用‘:0’作为 DISPLAY 变量的值连接到 X11 窗口 >服务器。
使用
ln -s /usr/java/jdk1.8.0_121/bin/java /usr/bin/java
导出 PATH=/usr/java/jdk1.8.0_121/bin:$PATH
导出JAVA_HOME=/usr/java/jdk1.8.0_121
也许我错过了一些东西,一些命令或者文件夹?
答案1
抱歉,它似乎有效。这是由于 root 用户,它必须在默认用户下运行!或者使用默认用户帐户中的第二或第三个命令。
我认为在这种情况下安装顺序很好。
但是通过查找原因,我通过 root 用户 bash 更改了一些内容。这应该在您自己的帐户下定义显示。
导出 DISPLAY=":0.0"
允许其他账户(除拥有该程序的账户外)在本地向其他账户显示自己的 X-Display。
xhost +本地:全部
如果用户账户在另一台机器上,则显示自己的X-Display。
xhost +inet:192.168.3.5(示例 ip)