即使删除 ~/.config/google-chrome 后,Chrome 在 Linux 上也会打开错误的应用程序

即使删除 ~/.config/google-chrome 后,Chrome 在 Linux 上也会打开错误的应用程序

我最近从 Fedora 23 升级到 Fedora 27,其中涉及安装新版本的 Chrome。然后我发现 Java 开始很痛苦,在实验过程中我最终告诉 Firefox 和 Chrome 用 Firefox 打开 .jnlp 扩展名。

最终我找到了 javaws 二进制文件,并能够告诉 Firefox 停止递归地打开自身并启动 /usr/java/latest/bin/javaws %U

然而,Chrome 仍然为每个 .jnlp 扩展名启动 Firefox(好吧,它可以与 Firefox 一起使用,但很混乱),但我一直无法找到一种方法来告诉 Chrome 使用 javaws。我已经做了“egrep -ri 'jnlp|firefox' ~/.config/google-chrome”并删除了几个文件但无济于事。我什至删除了整个 ~/.config/google-chrome 目录。然而,Chrome 仍然为每个 .jnlp 扩展名启动 Firefox。

我在网上搜索过,所有内容都在讨论为 Windoze 设置默认应用程序,但我正在运行正确的操作系统。我什至在此基础上创建了 /usr/share/applications/javaws.desktop,但 Chrome 仍然坚持为 .jnlp 扩展启动 Firefox。

我如何摆脱这个设置,甚至更好的是如何让它使用 javawa 代替?

Lenovo Thinkpad T510
Linux 4.16.7-200.fc27.x86_64 x86_64

Google Chrome   66.0.3359.181 (Official Build) (64-bit)
Revision    a10b9cedb40738cb152f8148ddab4891df876959-refs/branch-heads/3359@{#828}
JavaScript  V8 6.6.346.32
Flash   24.0.0.189 internal-not-yet-present
User Agent  Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36
Command Line    /usr/bin/google-chrome-stable --flag-switches-begin --flag-switches-end
Executable Path /opt/google/chrome/google-chrome

$ java -version
openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-b10)
OpenJDK 64-Bit Server VM (build 25.171-b10, mixed mode)

蒂亚·肯.

答案1

在做了 Chrome 的 strace 之后,我终于找到了它正在读取的配置文件,但它不在 ~/.config/google-chrome 中

它位于 ~/.config/mimeapps.list 中

application/x-java-jnlp-file=javaws.desktop;

必须有一个相应的文件 /usr/share/applications/javaws.desktop 包含如何执行 javaws 的详细信息

相关内容