java - 如何在特定的 Java 版本上运行应用程序?

标签 java linux ubuntu

如何运行具有特定 Java 版本的应用程序?我安装了三个 Java 版本:

myuser@mysystem:~$ sudo update-alternatives --config java
There are 3 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      auto mode
* 1            /opt/jdk-9.0.4/bin/java                          1         manual mode
  2            /opt/jdk1.8.0_162/bin/java                       1         manual mode
  3            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode

我将 Java 9 设置为默认设置,我希望保持这种状态。不过,名为 pdfsam 的应用程序似乎无法与 Java 9 一起正常工作。使用 openjdk(选项 3)运行它需要什么命令?

最佳答案

您可以使用安装的绝对路径运行java

这将是您的默认 /usr/bin/java 安装

java -version

要改变它,使用绝对路径

/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java -version

如果您没有直接运行 java 命令,请尝试设置 JAVA_HOME 变量:

JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64/jre/" pdfsam

关于java - 如何在特定的 Java 版本上运行应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50463766/

相关文章:

java - SQLite 帮助 - 如何显示新 Activity 的分数

linux - 从 Windows 7 上的 Linux 虚拟框访问文件

linux - 谁是可执行程序的父程序?

python - Anaconda pip 与 native Ubuntu pip

c - c 中是否有用于创建、删除或列出 btrfs 子卷的任何 BTRFS 库接口(interface)?

java - "StringBuffer sb = new StringBuffer()"在Android中获取空值

java - String.matches() 与\n

Java swing 时间表管理器

ruby-on-rails - 如何轮换我的 Rails 5 日志?

linux - TurtleSim 在 Windows 10 上显示 Linux