我一直在使用NVM为我的节点工作安装最新版本的nodeJS.它适用于安装单独的版本并在它们之间切换.它还在每个本地.../bin文件夹中安装最新版本的NPM以及节点二进制文件.但是,似乎没有任何方法可以切换我正在使用的NPM版本(或者至少我无法弄明白).
我能想到的唯一解决方案是删除它默认的二进制文件(这是我第一次使用NVM安装节点时安装的NPM),并取代它放置最新的NPM二进制文件.但是,我想知道是否有更好的方法可以做到这一点.
我正在尝试全局安装,然后使用forever并forever-monitor像这样:
npm install -g forever forever-monitor
我看到了通常的输出以及将文件复制到全局路径的操作,但是如果我尝试require("forever");得到错误,说明找不到该模块.
我正在使用node和npm的最新版本,我已经知道npm在全局和本地安装中所做的更改,但我真的不想在每个项目上安装localy而且我正在开发一个平台"科技支撑link这么npm link之后全球安装是不可能的我.
我的问题是:为什么我不能要求全局安装包?这是一个功能还是一个bug?或者我做错了什么?
PS:只是为了说清楚:我不想在本地安装.
我正在尝试在Mac OSX Lion上设置Node.这一切似乎都运行正常,但我似乎无法从我的全局模块文件夹导入任何模块.我收到错误,
Error: Cannot find module <module>
Run Code Online (Sandbox Code Playgroud)
如果我运行这个:node -e require.paths,我得到的回应是:
[ '/usr/local/lib/node_modules',
'/Users/Me/.node_modules',
'/Users/Me/.node_libraries',
'/usr/local/Cellar/node/0.4.12/lib/node' ]
Run Code Online (Sandbox Code Playgroud)
哪个是正确的,我的模块确实安装在/ usr/local/lib/node_modules中.但是,当我尝试运行脚本时,我得到了这个:
Error: Cannot find module 'socket.io'
at Function._resolveFilename (module.js:326:11)
at Function._load (module.js:271:25)
at require (module.js:355:19)
at Object.<anonymous> (/Users/Me/node/server.js:2:10)
at Module._compile (module.js:411:26)
at Object..js (module.js:417:10)
at Module.load (module.js:343:31)
at Function._load (module.js:302:12)
at Array.<anonymous> (module.js:430:10)
at EventEmitter._tickCallback (node.js:126:26)
Run Code Online (Sandbox Code Playgroud)
我的.bash_profile看起来像这样:
export PATH=/usr/local/mysql/bin:$PATH
export NODE_PATH=/usr/local/lib/node_modules
export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/usr/local/mysql/lib/"
Run Code Online (Sandbox Code Playgroud)
真的很感激一些帮助,我不知道为什么我不能导入任何库.
这是我在ubuntu 14.04 LTS中安装nodejs的方式:
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get install nodejs
Run Code Online (Sandbox Code Playgroud)
当我用这个检查节点版本时:
node -v
Run Code Online (Sandbox Code Playgroud)
我明白了
v0.10.37
Run Code Online (Sandbox Code Playgroud)
但最新版本是4.2.6和5.5.0.我如何获得最新版本或更新版本?
我在我的localhost中安装最新版本的nodejs.但系统总是安装4.2.6版本.如何安装最新版本.
我用过的命令:
sudo apt-get install python-software-properties
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install nodejs
Run Code Online (Sandbox Code Playgroud)
安装完毕后我检查过:
node -v
Run Code Online (Sandbox Code Playgroud)
结果:
v4.2.6
Run Code Online (Sandbox Code Playgroud)
产量apt-cache policy nodejs:
Installed: 4.2.6~dfsg-1ubuntu4
Candidate: 4.2.6~dfsg-1ubuntu4
Version table:
*** 4.2.6~dfsg-1ubuntu4 500
500 http://archive.ubuntu.com/ubuntu xenial/universe amd64
Packages
100 /var/lib/dpkg/status
Run Code Online (Sandbox Code Playgroud)
要么
任何人都可以发送安装的安装步骤
node-v8.2.1-linux-x64.tar.xz
Run Code Online (Sandbox Code Playgroud)
文件.
谢谢
我是 Linux 新手,这是我想要实现的目标:
我正在尝试使用以下命令在 Debian Linux 上安装 nodejs 版本:
apt-get install nodejs=8.14.0
Run Code Online (Sandbox Code Playgroud)
但我得到这个错误的回报:
E: Version '8.14.0' for 'nodejs' was not found
Run Code Online (Sandbox Code Playgroud)
据我发现,这是指定版本的正确方法。如果我这样做,那么它工作正常:
apt-get install nodejs
Run Code Online (Sandbox Code Playgroud)
但我需要这个特定版本,而不是最新版本。我正在为 Docker 映像执行此操作,因此必须在运行时安装它。
我尝试安装它的原因是使用 fast.db 作为默认驱动程序,但我似乎无法弄清楚错误是什么。也许堆栈溢出的好心人能够提供一些帮助。看起来它成功地完成了大部分安装过程,但最终失败了。尝试使用这个新版本的 QuickDB 一直是一种持续的痛苦。
这是控制台生成的日志:
npm ERR! code 1
npm ERR! path /Projects/node_modules/better-sqlite3
npm ERR! command failed
npm ERR! command sh -c prebuild-install || npm run build-release
npm ERR! > better-sqlite3@7.5.3 build-release
npm ERR! > node-gyp rebuild --release
npm ERR!
npm ERR! TOUCH ba23eeee118cd63e16015df367567cb043fed872.intermediate
npm ERR! ACTION deps_sqlite3_gyp_locate_sqlite3_target_copy_builtin_sqlite3 ba23eeee118cd63e16015df367567cb043fed872.intermediate
npm ERR! rm ba23eeee118cd63e16015df367567cb043fed872.intermediate
npm ERR! prebuild-install warn install No prebuilt binaries found (target=16.14.0 runtime=node arch=arm64 libc= platform=darwin)
npm ERR! gyp info it worked if it ends with ok
npm …Run Code Online (Sandbox Code Playgroud) node.js ×7
npm ×3
apt-get ×1
docker ×1
linux ×1
npm-install ×1
package ×1
quick.db ×1
ubuntu ×1
ubuntu-16.04 ×1