我在npm设置的 Vagrant 盒子中遇到问题。我注意到npm版本有点旧,所以我想检查最新版本的问题。
这是我的理解是,你应该能够更新npm使用npm install -g npm,但该命令对没有影响npm使用感:
vagrant@box:~$ npm -v
1.3.10
vagrant@box:~$ sudo npm install -g npm
npm http GET https://registry.npmjs.org/npm
npm http 200 https://registry.npmjs.org/npm
npm http GET https://registry.npmjs.org/npm/-/npm-2.1.12.tgz
npm http 200 https://registry.npmjs.org/npm/-/npm-2.1.12.tgz
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@2.1.12 /usr/local/lib/node_modules/npm
vagrant@box:~$ npm -v
1.3.10
Run Code Online (Sandbox Code Playgroud)
我也尝试使用n(如How can I update my nodeJS to the latest version? 中建议的那样?)进行更新,但它既不影响npm也不影响node:
vagrant@box:~$ node -v
v0.10.25
vagrant@box:~$
vagrant@box:~$ sudo …Run Code Online (Sandbox Code Playgroud) 正常安装是sudo apt install nodejs先安装 Node.js,然后再sudo apt install npm安装 Node Package Manager。然而,在这样做时,npm -v说3.5.2。要正常升级,我会做sudo npm install -g npm,它更新到最新版本(在撰写本文时为6.0.1)。
当我执行 a 时which npm,我得到/usr/local/bin/npm,但是apt在/usr/bin/npm. 如果我sudo apt purge npm删除 npm,它仍然会将 npm 的 npm 版本保留在/usr/local/bin/npm,但是npm -v说-bash: /usr/bin/npm: No such file or directory.
很多文章都说使用PPA来安装nodejs,但我认为应该有一种通过apt.
DigitalOcean 关于正常安装和通过 PPA 的安装说明: https : //www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-18-04
通过 PPA 安装的 TecAdmin 说明: https …
npm 不支持 Node.js v10.19.0 您可能应该升级到较新版本的 Node,因为我们无法保证 npm 将与此版本配合使用。您可以在https://nodejs.org/找到最新版本
我尝试按照此答案方向安装 n 以进行节点版本更新。它成功地将我升级到节点 v7,但有一个副作用。现在已找到节点:
/usr/local/bin/node
Run Code Online (Sandbox Code Playgroud)
如果我输入,node -v我会收到 bash 错误,因为它在错误的位置查找(它在 中查找usr/bin/node)。我最好的前进道路是什么?如何更改终端查找节点的路径,以便我可以运行node index.js,同时不干扰我将来使用 n 升级节点的愿望。
我不确定这是否相关,但是,当我在一个项目中并且我输入的nodemon index.js一切都按预期工作。我认为这是因为nodemon安装在安装node v7的地方。
这是 的值echo $PATH:
/usr/local/heroku/bin:/home/devin/.rbenv/shims:/home/devin/.rbenv/bin:/usr/bin:/home/devin/bin:/home/devin/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Run Code Online (Sandbox Code Playgroud)
这是 的值which node:
/usr/local/bin/node
Run Code Online (Sandbox Code Playgroud)
的值locate node使终端过载并结束如下:
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/node.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/outer_join.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/over.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/regexp.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/right_outer_join.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/select_core.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/select_statement.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/sql_literal.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/string_join.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/table_alias.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/terminal.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/true.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/unary.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/unary_operation.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/unqualified_column.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/update_statement.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/values.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/window.rb
/var/lib/gems/2.3.0/gems/arel-7.1.2/lib/arel/nodes/with.rb
/var/lib/gems/2.3.0/gems/execjs-2.7.0/lib/execjs/support/node_runner.js
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/ext/nokogiri/xml_node.c
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/ext/nokogiri/xml_node.h
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/ext/nokogiri/xml_node.o
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/ext/nokogiri/xml_node_set.c
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/ext/nokogiri/xml_node_set.h
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/ext/nokogiri/xml_node_set.o
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/lib/nokogiri/css/node.rb
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/lib/nokogiri/xml/node
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/lib/nokogiri/xml/node.rb
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/lib/nokogiri/xml/node_set.rb
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/lib/nokogiri/xml/node/save_options.rb
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/lib/nokogiri/xml/pp/node.rb
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/test/html/test_node.rb
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/test/html/test_node_encoding.rb
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/test/xml/node
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/test/xml/test_node.rb
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/test/xml/test_node_attributes.rb
/var/lib/gems/2.3.0/gems/nokogiri-1.6.8/test/xml/test_node_encoding.rb …Run Code Online (Sandbox Code Playgroud)