我正在运行 Ubuntu Xenial(16.04.3 LTS)。
要从浏览器使用 Java,请使用以下命令安装 Firefox ESR
$ sudo add-apt-repository ppa:jonathonf/firefox-esr $ sudo apt-get update $ sudo apt-get install firefox-esr
除了 ESR 版本的 Firefox 之外,我没有安装任何其他版本的 Firefox。
在 Firefox 的 about:config 部分添加了“plugin.load_flash_only = false”。
在 $HOME/.mozilla/plugins 中,为 java 插件创建此符号链接
$ cd $HOME/.mozilla/plugins $ ln -s /usr/lib/jvm/java-8-oracle/jre/lib/amd64/libnpjp2.so .
确保 Oracle 的 java 是默认 java。/usr/lib/jvm/default-java 是指向 /usr/lib/jvm/java-8-oracle 的符号链接。
进行这些更改后,当我启动 Firefox 并转到
http://www.java.com/verify
并点击链接
Firefox 52 ESR users: If you'd like to run the verify app as a plugin, please click here.
我在启动 Firefox 的终端中收到此异常
线程“main”中的异常 java.lang.NullPointerException 在 sun.plugin2.main.server.JVMManager.getOrCreateBestJVMInstance(未知来源) 在 sun.plugin2.main.server.JVMManager.startAppletImpl(未知来源) 在 sun.plugin2.main.server.JVMManager.startApplet(未知来源) 在 sun.plugin2.main.server.JVMManager.startApplet(未知来源) 在 sun.plugin2.main.server.MozillaPlugin.maybeStartApplet(未知来源) 在 sun.plugin2.main.server.MozillaPlugin.setWindow(未知来源)
java 命令是 /etc/alternatives/java 的符号链接,而 /etc/alternatives/java 又是 /usr/lib/jvm/java-8-oracle/jre/bin/java 的符号链接
我能够通过命令行成功运行 java
$ java -version java version "1.8.0_144" Java(TM) SE Runtime Environment (build 1.8.0_144-b01) Java HotSpot(TM) 64-Bit Server VM (build 25.144-b01, mixed mode)
不清楚为什么 Firefox 在使用已安装的 Java 时会遇到问题。
答案1
你可以解决这个问题。
打开浏览器并输入:
about:config
右键单击名称标题,选择新建首选项 > 布尔值
创建具有此标签的新条目:
plugin.load_flash_only
设置false
并重新启动浏览器。
实际上,此解决方案与系统中安装和运行的 Java 类型无关。在本例中,Openjdk 插件无法与 Firefox ESR 配合使用,但 Oracle Java 可以按照以下方式安装:Digital Ocean 教程。虽然他们说它已被弃用(因为它适用于 Ubuntu 12.04),但步骤是一样的:你可以在 ubuntu 17.10 中使用它,只需下载 jdk 8u161。我认为这是 Firefox 的最佳实践,因为 OpenJDK 不会安装 libnpjp2.so,在 Firefox ESR 中激活 Java 至关重要。
要在 Firefox ESR 上激活此插件,您必须创建指向安装 Oracle Java 的文件夹的符号链接:
mkdir </Firefox ESR installed path>/firefox/browser/plugins
cd </Firefox ESR installed path>/firefox/browser/plugins
ln -s </Oracle Java installed path>/jre/lib/amd64/libnpjp2.so
也许还有其他方法可以在 Firefox ESR 中激活 Java 插件,但这种方法确实有效。我立即下载了 Firefox 52 ESR 并在那里激活了 Java!