1、首先安装了个 node 版本6.11.2 的 npm 3.10.10 直接在linux 手输命令没有问题

2、使用jenkins 打包总是找不到 npm ,浏览博客发现是没有建立软连接  

ln命令是一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。 当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。

语法  ln [参数][源文件或目录][目标文件或目录]

这个参数一般有一下几种

-b 删除,覆盖以前建立的链接

-d 允许超级用户制作目录的硬链接

-f 强制执行

-i 交互模式,文件存在则提示用户是否覆盖

-n 把符号链接视为一般目录

-s 软链接(符号链接)

-v 显示详细的处理过程

然后我这边直接就是

ln -s /usr/local/bin/npm /bin/npm 

ln -s /usr/local/bin/node /bin/node

3、后来由于其他项目的node 版本不同需要修改版本,使用了nvm 来做了下版本控制,具体方法如下

安装 nvm 命令:wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash  这个很多博客都有写

然后载入配置 source ~/.bashrc ;可以看下vim ~/.bashrc 配置是否有了,没有自行百度很多;

装完了nvm 然后安装node  命令 nvm ls-remote 可以看下现在有哪些版本 选择版本安装  nvm i 10.8.0 

安装完成之后 查看版本号

然后用jenkns 打包还是报错,node版本还是没变

解决方案 重新建立软连接 先删除软连接 rm /bin/node ,其实可以直接强制建立新软连接 使用ln -f

查找使用nvm 安装的node在哪 命令 :find . -name node 默认目录:/root/.nvm/versions/node/

nvm use 10.8.0 #切换至 10.8.0版本

nvm uninstall 10.8.0 #卸载10.8.0版本

 

记录项目自动化发布的坑

 

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐