WebStorm 找不到节点解释器
WebStorm can't find node interpreter
我是 运行 Manjaro,我在 PATH 中有一个节点,它位于 /usr/bin/node
,我可以使用 [=] 从终端调用它11=],符合预期。但是,当我尝试将解释器添加到 WebStorm 时,当我打开用于添加 Node 和 npm 可执行文件的对话框并导航到 /usr/bin
时,它根本不会显示在那里。我已经通过 flatpak 安装了 WebStorm。有什么想法吗?
设法通过卸载 flatpak
WebStorm 实例来解决这个问题,我已经安装并安装了 WebStorm 到 [=11] =] 商店。它只是在之后工作,但我会保留这个问题,以防有人有更好的解决方案。
Flatpak 是沙盒化的,因此它不能直接运行 主机上用户主目录之外的任何内容。
但是,有一种方法可以解决这个问题,方法是使用 flatpak-spawn
.
对主机二进制文件进行 flatpak 运行
解决方案
1. 运行shell中的这两条命令:
printf '#!/usr/bin/env sh\nflatpak-spawn --host node "$@"\n' > ~/flatpak-node
chmod a+x ~/flatpak-node
2。在 WebStorm 中,转到
File
> Settings
> Languages & Frameworks
> Node.js and NPM
(或TypeScript
)
并将 Node Interpreter
设置为 ~/flatpak-node
。
说明
这将在您的主目录中创建一个名为 flatpak-node
的可执行文件,内容如下:
#!/usr/bin/env sh
flatpak-spawn --host node "$@"
这将告诉 Flatpak 运行 主机上的 node
二进制文件并传递任何参数。它之所以有效,是因为我们创建的可执行文件位于主目录中,并且 flatpak-spawn
可以 运行 命令就像它在主机上(在沙箱之外)一样。
就我个人而言,我制作了文件 ~/bin/flatpak-node
,但您可以将其放在主目录中的任何位置。
奖金PHP
值得注意的是,同样的解决方案适用于 PhpStorm 和 php
解释器。只需将内容和文件名中的 node
替换为 php
:
#!/usr/bin/env sh
flatpak-spawn --host php "$@"
我是 运行 Manjaro,我在 PATH 中有一个节点,它位于 /usr/bin/node
,我可以使用 [=] 从终端调用它11=],符合预期。但是,当我尝试将解释器添加到 WebStorm 时,当我打开用于添加 Node 和 npm 可执行文件的对话框并导航到 /usr/bin
时,它根本不会显示在那里。我已经通过 flatpak 安装了 WebStorm。有什么想法吗?
设法通过卸载 flatpak
WebStorm 实例来解决这个问题,我已经安装并安装了 WebStorm 到 [=11] =] 商店。它只是在之后工作,但我会保留这个问题,以防有人有更好的解决方案。
Flatpak 是沙盒化的,因此它不能直接运行 主机上用户主目录之外的任何内容。
但是,有一种方法可以解决这个问题,方法是使用 flatpak-spawn
.
解决方案
1. 运行shell中的这两条命令:
printf '#!/usr/bin/env sh\nflatpak-spawn --host node "$@"\n' > ~/flatpak-node
chmod a+x ~/flatpak-node
2。在 WebStorm 中,转到
File
> Settings
> Languages & Frameworks
> Node.js and NPM
(或TypeScript
)
并将 Node Interpreter
设置为 ~/flatpak-node
。
说明
这将在您的主目录中创建一个名为 flatpak-node
的可执行文件,内容如下:
#!/usr/bin/env sh
flatpak-spawn --host node "$@"
这将告诉 Flatpak 运行 主机上的 node
二进制文件并传递任何参数。它之所以有效,是因为我们创建的可执行文件位于主目录中,并且 flatpak-spawn
可以 运行 命令就像它在主机上(在沙箱之外)一样。
就我个人而言,我制作了文件 ~/bin/flatpak-node
,但您可以将其放在主目录中的任何位置。
奖金PHP
值得注意的是,同样的解决方案适用于 PhpStorm 和 php
解释器。只需将内容和文件名中的 node
替换为 php
:
#!/usr/bin/env sh
flatpak-spawn --host php "$@"