我正在使用 Ubuntu Mate Xenial,但找不到在 Firefox 52 中运行 Java 的方法。
答案1
火狐浏览器禁用 NPAPI 插件在版本 52 中,Flash 插件除外。这意味着您无法再使用 Java 插件。
要继续使用 Java 插件,您需要切换到仍然支持它的 Firefox 52 ESR。
答案2
如果您希望继续使用当前(最新)版本的 Firefox,但同时安装 Firefox 51 (FF 51),这样当您需要使用 JRE (Java NPAPI) 插件时可以使用 FF 51 ,您可以按照以下步骤操作:
打开 shell 终端窗口普通用户(不是根/超级用户!)然后运行此命令以创建“应用程序”文件夹:
mkdir ~/applications
现在关闭所有 Firefox 实例(窗口)然后运行此 shell 命令,以下载并安装 FF 51 tarball,然后删除 FF 51 自动更新程序:
sudo killall firefox ; if [ `getconf LONG_BIT` == 64 ]; then wget https://ftp.mozilla.org/pub/firefox/releases/51.0/linux-x86_64/en-US/firefox-51.0.tar.bz2 -O ~/applications/ff51.tar.bz2; else wget https://ftp.mozilla.org/pub/firefox/releases/51.0/linux-i686/en-US/firefox-51.0.tar.bz2 -O ~/applications/ff51.tar.bz2; fi; cd ~/applications ; tar -xvf ~/applications/ff51.tar.bz2 ; rm ~/applications/ff51.tar.bz2 ~/applications/firefox/updater*
- 笔记:以上命令下载美国英语 (
en-US
) 的 FF 51。例如,如果您想要巴西葡萄牙语版本,请在上面的命令中替换en-US
为pt-BR
。同样的逻辑也适用于其他语言。可找到适用于 FF 51 的 ISO 语言国家代码的完整列表这里。
- 笔记:以上命令下载美国英语 (
下一个命令将创建插件用于自定义 FF 51 安装的文件夹。
if [ ! -d ~/.mozilla ]; then mkdir ~/.mozilla; fi; if [ ! -d ~/.mozilla/plugins ]; then mkdir ~/.mozilla/plugins; fi; chmod -R 770 ~/.mozilla
现在,假设您使用的是 JRE(而不是 JDK),请运行此命令以创建指向 JVM(Java 虚拟机)二进制文件(爪哇文件)位于 FF 51 插件文件夹中:
if [ `getconf LONG_BIT` == 64 ]; then sudo ln -sf $(echo $(which java) | rev | cut -c10- | rev)/lib/amd64/libnpjp2.so ~/.mozilla/plugins/sunjava; else sudo ln -sf $(echo $(which java) | rev | cut -c10- | rev)/lib/i386/libnpjp2.so ~/.mozilla/plugins/sunjava; fi
创建一个指向 FF 51 的符号链接,
/usr/bin/
以便当您运行命令时firefox51
终端启动 FF 51:sudo ln -sf ~/applications/firefox/firefox /usr/bin/firefox51
好的!现在让我们启动 Firefox 的配置文件管理器:
firefox51 -P
将会出现一个窗口。确保
Work offline
盒子是未经检查的(未标记)并且该Use the selected profile without asking at startup
盒子是检查过(已标记)。另外,请注意该列表已经有一个default
配置文件:这是 Firefox 的标准配置文件,因此应保留。在同一窗口中,单击
Create Profile...
,然后单击Next
,转到Enter new profile name:
并键入ff51。然后,单击Finish
。请注意,现在该
ff51
配置文件已被选中,这使其成为新的标准配置文件。但这是错误的。因此,default
再次选择配置文件并(仅)然后单击Exit
。现在运行此命令以使用新
ff51
配置文件启动 FF 51:firefox51 -P ff51
现在您正在运行 FF 51,请打开关于:配置URL(这是 Firefox 的配置页面),取消选中该
Show this warning again
框并单击I accept the risk!
,然后转到Search:
并键入app.update.enabled
(此参数定义 Firefox 是否搜索更新)。如果app.update.enabled
存在并且其属性为true
,请双击它以将该属性更改为false
(您也可以右键单击它,然后选择Toggle
,以反转其值)。对参数重复相同的过程
app.update.enabled
:如果它可用且其属性为true
,则将其属性更改为false
。现在配置文件
ff51
已创建并配置为永远不会让 FF 51 执行自动自我更新,关闭所有 FF 51 窗口,让我们做一些测试!如果你开始你的当前的火狐浏览器关于:支持URL 必须显示您正在运行最新的 Firefox 版本,关于:个人资料必须向您显示当前使用的配置文件是
default
,并且关于:配置必须向您显示参数app.update.enable
和app.update.auto
设置为true
。如果您关闭系统上安装的当前(最新)Firefox 版本,然后启动 Firefox 51(可以通过运行 shell 命令来执行此操作
firefox51 -P ff51
),则关于:支持URL 必须显示您正在运行 Firefox 版本 51.0,关于:个人资料必须向您显示当前使用的配置文件是ff51
,并且关于:配置必须向您显示参数app.update.enable
和app.update.auto
均设置为false
。关闭所有 Firefox 窗口,然后运行 shell 命令
firefox
并转到关于:首选项#高级,单击该Update
选项卡并确保Automatically install updates (recommended: improved security)
已选中(如果未选中,请选择它),因为您当前的 Firefox 必须使用该default
配置文件来执行,并且必须设置此类配置文件才能使 Firefox 自动执行自我更新。如果该框不可见,则意味着 Firefox 已配置为执行自动自我更新,并且此配置受到保护以防止修改。现在你的当前的Firefox 已正确配置,关闭它并再次运行
firefox51 -P ff51
,然后转到关于:首选项#高级,单击Update
选项卡并确保Never check for updates (not recommended: security risk)
选中该框(如果未选中,请选择它),因为您的 FF 51 安装必须使用“替代”配置文件执行ff51
,并且此类配置文件必须设置为拒绝自动自我更新。PS:如果 FF 51 上弹出窗口要求您重新启动浏览器以便应用更新,请不要担心:只需单击“重新启动”按钮即可。由于 FF 51 更新程序之前已被删除,因此 FF 51 将无法自行更新。
保持 FF 51 打开并使用配置文件
ff51
,然后转到关于:支持并确保您确实使用 FF 版本51.0(这是完整/正确的版本号)。另外,如果检测到 NPAPI JRE 插件,那么如果您转到关于:插件你会Java(TM) Plug-in
在那里看到一条文字。你也可以去https://www.java.com/pt_BR/download/installed8.jsp检查您的 FF 51 浏览器是否确实检测到并能够运行 NPAPI Java 插件。如果 Java 插件无法正常工作,可能是它被阻止了:只需转到关于:插件,单击
Plugins
选项卡,然后在 Java 插件行中选择该Always activate
选项。从现在开始,每次需要运行 Firefox 51 时,只需打开 shell 终端窗口并运行以下命令:
firefox51 -P ff51
您还可以
firefox51.desktop
在 下创建一个文件/usr/share/applications/
,许多 Linux 发行版都会将其检测为“应用程序”文件夹,并且很可能(不一定 100%)使您的 FF 51 安装在发行版的应用程序菜单中的某个位置可见(假设您的 Linux 发行版运行的是DE - 桌面环境)。如果您不知道如何创建
.desktop
文件并且想使用 shell 命令来尝试(不一定成功)要创建此类文件,请运行以下 shell 命令:sudo cp `find /usr/share/applications -iname '*firefox*.desktop' -print -quit` /usr/share/applications/firefox51.desktop ; sudo sed -i -e 's|Exec=firefox \%u|Exec=firefox51 -P ff51 \%u|' "/usr/share/applications/firefox51.desktop" ; sudo sed -i -e 's|Exec=firefox -new-window|Exec=firefox51 -P ff51 -new-window|' "/usr/share/applications/firefox51.desktop" ; sudo sed -i -e 's|Exec=firefox -private-window|Exec=firefox51 -P ff51 -private-window|' "/usr/share/applications/firefox51.desktop" ; sudo sed -i -e 's|Firefox|Firefox 51|' "/usr/share/applications/firefox51.desktop"
- 笔记
firefox.desktop
:如果你想让上面的“超级命令”有一点机会工作,你必须安装当前版本的 Firefox,因为上面的命令做的第一件事就是在 中查找文件/usr/share/applications/
,并且唯一的机会如果您安装了当前的 Firefox 版本(FF 51 除外),则存在此类文件。
- 笔记
如果启动器已成功创建(并正确配置),Linux 发行版 DE 的应用程序菜单将向您显示一些名称为“Firefox 51”或类似名称的应用程序启动器。此启动器将始终使用备用配置文件启动 Firefox 51
ff51
,并且此 FF 51 安装永远不会尝试自我更新(即使这样做,它也会失败......)。只要您保持 JRE 更新并且其插件具有指向 的符号链接~/.mozilla/plugins/sunjava
,您的 FF 51 安装就能够在网站请求时运行 Java/JRE NPAPI 插件。
脚注
如果您想查看 Firefox 使用的 URL 的完整列表
about:
,只需访问关于:关于。我特别发现关于:mozilla非常有趣(同时也很奇怪)。“能力越大,责任越大”:某些
about:
URL 允许您执行可能会破坏浏览器的操作。当心。你被警告了。
答案3
我的建议是使用另一个仍在开发中的 Web 浏览器,基于 Firefox 已弃用的功能,例如 Pale Moon(它基本上是某些旧 Firefox 版本的分支),如所解释的这里。