browserify错误/ usr / bin / env:node:没有这样的文件或目录
我通过apt-get install和所有依赖项安装了节点js和npm,然后安装了browserify
npm install browserify -g
它贯穿整个过程,看起来好像安装正确,但是当我尝试在本演练中做一个简单的包时
我得到的错误:
/ usr / bin / env:node:没有这样的文件或目录
一些linux发行版安装的nodej不是“node”可执行的,而是“nodejs”。
在这种情况下,必须手动链接到“节点”,因为许多软件包在“节点”二进制之后被编程。 类似的事情也发生与“python2”没有链接到“python”。
在这种情况下,你可以做一个简单的符号链接。 对于将软件包二进制文件安装到/usr/bin
Linux发行版,您可以执行此操作
ln -s /usr/bin/nodejs /usr/bin/node
新答案:
- 卸载已经通过系统软件包pipe理器(dnf,apt-get等)安装的任何nodejs软件包,删除任何重新创build每个升级(lol)的愚蠢符号链接。
- 安装NVM,
- 使用nvm来安装nodejs:nvm install 6
老答案:
任何关于创build符号链接或安装其他节点包的讨论都是虚假的,而且是不可持续的。
解决这个问题的正确方法是:
- 使用apt-get简单安装nodejs包就像你已经有了
- 使用
update-alternatives
来指示你的nodejs二进制文件负责#!/usr/bin/env node
像这样:
sudo apt-get install nodejs sudo update-alternatives --install /usr/bin/node nodejs /usr/bin/nodejs 100
这在整个软件包升级,远程升级等方面都变得可持续。
运行apt-get install nodejs-legacy
。
某些linux发行版已经改变了node.js二进制名称,使得它与很多node.js包不兼容。 包nodejs-legacy
提供了一个符号链接来解决这个问题。
您也可以使用NVM或Nodejs版本pipe理器来安装Nodejs。 使用版本pipe理器有很多好处 。 其中之一是你不必担心这个问题。
说明:
sudo apt-get update sudo apt-get install build-essential libssl-dev
安装必备软件包之后,可以从项目的GitHub页面下拉nvm安装脚本。 版本号可能不同,但一般来说,您可以使用以下语法下载并安装它:
curl https://raw.githubusercontent.com/creationix/nvm/v0.16.1/install.sh | sh
这将下载脚本并运行它。 它会将软件安装到~/.nvm
主目录的子目录中。 它还会将必要的行添加到~/.profile
文件中以使用该文件。
要访问nvmfunction,您需要注销并重新login,或者可以获取〜/ .profile文件,以便当前会话知道有关更改:
source ~/.profile
现在你已经安装了nvm,你可以安装独立的Node.js版本。
要找出可用于安装的Node.js版本,可以键入:
nvm ls-remote . . . v0.11.10 v0.11.11 v0.11.12 v0.11.13 v0.11.14
正如你所看到的,写这篇文章时的最新版本是v0.11.14。 你可以通过input以下命令来安装
nvm install 0.11.14
通常,nvm将切换到使用最近安装的版本。 您可以通过键入以下命令来明确告诉nvm使用我们刚刚下载的版本:
nvm use 0.11.14
当您使用nvm安装Node.js时,可执行文件被称为节点。 您可以通过input以下命令来查看shell正在使用的版本:
node -v
这个补充教程可以在这里find
sudo apt-get install nodejs-legacy
这将创build符号链接/usr/bin/node -> nodejs
。
资料来源: https : //lists.debian.org/debian-devel-announce/2012/07/msg00002.html
你必须调用“nodejs”而不是“node”。 要validation这一点,请在shell上键入node -v
:如果没有find,请尝试nodejs -v
。 如果显示一个版本号,那么你应该使用的命令是nodejs
而不是node
。 因此,您必须将脚本中的nodejs
从node
更改为nodejs
(如下所示):replace
#!/usr/bin/env node
同
#!/usr/bin/env nodejs
您可能还必须以超级用户的身份打开脚本。
当我在Linux中构buildprimefaces时,我似乎也遇到同样的问题。
sudo apt-get install nodejs-dev
修复我的问题。对你有帮助。
如果你不想符号链接,你可以做到这一点。 在Ubuntu的工作
#!/usr/local/bin/node --harmony
和谐标签是为了新的ECMAscript和谐