Sas*_*sha 5 bash zsh node.js npm
所以我正在研究学习node.js. 我一直在关注这个教程来安装它并尝试一些东西.
无论如何,npm表现得非常奇怪.它会在一段时间内正常工作(例如我改变了它的查看器配置设置),然后突然"消失",以便下次进入
npm ...(anything)
Run Code Online (Sandbox Code Playgroud)
在命令行中,我的shell通知我没有找到npm命令.以前,使用nvm卸载然后重新安装npm已经有效了,但是我不想每隔十分钟就这样做,而且我突然停止工作对我来说非常奇怪.
我想最后一次,它在我编辑然后重新获取我的〜/ .zshrc文件后停止工作 - 只是添加了npm和节点制表符完成插件.
知道发生了什么事吗?我会发布几个基本命令的结果,但我对sysadmin的东西真的很糟糕,我真的不知道在这里要找什么.
nvm -ls
v0.8.22
current: v0.10.2
default -> 0.8 (-> v0.8.22)
Run Code Online (Sandbox Code Playgroud)
哪个节点
/usr/bin/node
Run Code Online (Sandbox Code Playgroud)
哪个npm
npm not found
Run Code Online (Sandbox Code Playgroud)
nvm(这是一个重复的吗?)和npm目录直接在我的根文件夹中.
如果我进入/ usr/bin,则node是文件,而不是目录.还有一个文件npm,但不是文件nvm.
正如上面所说的那样,我真的不知道发生了什么.我搜索过这个,但似乎没有人有这个问题.任何想法发生了什么或如何找出?
编辑注意到我的默认节点不是最新的,我做了所有这些.撇开为什么我的shell自动切换到bin目录(为什么这似乎是一个github回购 - 不知道我的电脑是什么),这是否提供了任何线索?:
? node nvm alias default v0.10.2
default -> v0.10.2
? node nvm ls
v0.8.22
current: v0.10.2
default -> v0.10.2
? node npm
zsh: command not found: npm
? node nvm install npm
######################################################################## 100.0%
Checksums do not match.
Binary download failed, trying source.
Additional options while compiling:
nvm: install N/A failed!
? bin git:(master) nvm uninstall npm
N/A version is not installed yet... installing
######################################################################## 100.0%
Checksums do not match.
Binary download failed, trying source.
Additional options while compiling:
nvm: install N/A failed!
? bin git:(master) cd ~/rails/node
Run Code Online (Sandbox Code Playgroud)
编辑2 - 我确保节点路径已添加到我的zshrc文件中:
#other stuff...
export PATH=(...):/usr/bin/node
Run Code Online (Sandbox Code Playgroud)
但是当我试着跑的时候
source ~./zshrc
Run Code Online (Sandbox Code Playgroud)
我收到了这个投诉:
.zshrc:11: command not found: npm
Run Code Online (Sandbox Code Playgroud)
指向这些行(添加数字):
10 . ~/nvm/nvm.sh
11 . <(npm completion)
Run Code Online (Sandbox Code Playgroud)
我从上面的tut得到了,当npm工作时,回来查看如何实现tab完成.
回应Jens
这是在我的〜/ nvm/nvm.sh文件中,靠近开头:
# Auto detect the NVM_DIR
if [ ! -d "$NVM_DIR" ]; then
export NVM_DIR=$(cd $(dirname ${BASH_SOURCE[0]:-$0}) && pwd)
fi
# Make zsh glob matching behave same as bash
# This fixes the "zsh: no matches found" errors
if [ ! -z "$(which unsetopt 2>/dev/null)" ]; then
unsetopt nomatch 2>/dev/null
fi
Run Code Online (Sandbox Code Playgroud)
我尝试(并且我认为成功)chmod npm目录使其成为读/写/可执行文件.
nano ~/.zshrc
Run Code Online (Sandbox Code Playgroud)
export PATH="$PATH:/usr/local/share/npm/bin"
Run Code Online (Sandbox Code Playgroud)
source ~/.zshrc
Run Code Online (Sandbox Code Playgroud)
这个简单的过程对我有用:-)
老实说,不确定这是否会解决您正在遇到的问题,但我所经历的与您所详细描述的几乎完全一样 - npm 正在工作,但随后随机完全停止工作 - 我尝试了很多相同的方法人们在这里建议的东西没有运气。
最终为我解决这个问题的方法是:
source ~/.bash_profile
Run Code Online (Sandbox Code Playgroud)
我希望我能更好地解释为什么这是灵丹妙药,但至少它有效!
干杯!
| 归档时间: |
|
| 查看次数: |
25682 次 |
| 最近记录: |