我的系统是 Linux Mint 18.3 Cinnamon 64 位。
我已经使用软件管理器安装了 IntelliJ-IDEA 和 Default-jdk (openjdk-8-jdk)。
我可以在 /usr/lib/jvm/java-1.8.0-openjdk-amd64
或 /etc/java-8- 下看到我认为是 JDK 文件夹的内容使用文件管理器 (Nemo) 或终端浏览时打开 openjdk
。但这并不重要,因为 IntelliJ 无论如何都看不到任何一个文件夹。事实上,在尝试为 JDK 选择主目录 时,IntelliJ 似乎只能看到 /usr/lib
下的 14 个子文件夹(数百个)。
甚至不确定如何使用 sudo
从命令行启动 IDEA,例如测试该问题是否与权限相关,因为它显然是通过 flatpak 替代启动的。
看起来这应该很简单。我不确定我做错了什么。
最佳答案
正如其他人所说 - 沙盒是一项功能,而不是错误。
我认为@Kevin Dubois 的回答在适用的情况下应该是首选(通过 flatpak 安装你想分享的东西),但如果你想继续使用 flatpak
如何在 flatpak 中找到 /etc
和 /usr
路径:
如this末尾所述文档部分:
/etc
安装在/var/run/host/etc
用于 flatpakked 软件/usr
安装在/var/run/host/usr
用于 flatpakked 软件
您还需要为您的应用授予 --filesystem=host:ro
权限(如果它还没有)(见下文如何操作)。
如果您需要查找或管理其他路径:
注意:通常最好尽可能少地授予软件额外访问权限。这就是为什么在授予对路径的访问权限时最好使用可选 :ro
后缀以使其以只读 方式访问的原因。如果某些软件滥用其对您设备的访问权限,您也将承担部分责任。
filesystem permissions reference 中有一些有用的路径变量以及很多关于文件系统权限的附加信息 here .
GUI 选项:
Flatseal看起来很整洁。
命令行选项:
以下示例用于管理 flatpak 应用 com.jetbrains.IntelliJ-IDEA-Community
的路径 /var/lib/gems
。
检查当前权限:
flatpak info --show-permissions com.jetbrains.IntelliJ-IDEA-Community
授予访问权限:
sudo flatpak override --filesystem="/var/lib/gems":ro com.jetbrains.IntelliJ-IDEA-Community
禁止访问:
sudo flatpak override --nofilesystem="/var/lib/gems" com.jetbrains.IntelliJ-IDEA-Community
将权限重置为初始状态:
sudo flatpak override --reset com.jetbrains.IntelliJ-IDEA-Community
关于java - 无法为 JDK 选择主目录,因为 IntelliJ 看不到它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54499133/