Jenkins 依赖NPM的包未更新

Jenkins 依赖NPM的包未更新,jenkins,npm,protractor,Jenkins,Npm,Protractor,我使用的是grunt量角器runner,它可以拉下量角器的最新小调版本。在量角器版本2.5中有一个错误导致我的测试失败。我通过查看jenkins上我们用来构建的日志,确认它正在使用那个版本 21:56:58 grunt-protractor-runner@2.0.0 node_modules/grunt-protractor-runner 21:56:58 ├── split@0.3.3 (through@2.3.8) 21:56:58 ├── through2@0.5.1 (xtend@3.0

我使用的是grunt量角器runner,它可以拉下量角器的最新小调版本。在量角器版本2.5中有一个错误导致我的测试失败。我通过查看jenkins上我们用来构建的日志,确认它正在使用那个版本

21:56:58 grunt-protractor-runner@2.0.0 node_modules/grunt-protractor-runner
21:56:58 ├── split@0.3.3 (through@2.3.8)
21:56:58 ├── through2@0.5.1 (xtend@3.0.0, readable-stream@1.0.33)
21:56:58 └── protractor@2.5.0 (jasminewd@1.1.0, jasminewd2@0.0.6, html-   entities@1.1.3, q@1.0.0, minijasminenode@1.1.1, optimist@0.6.1, adm-  zip@0.4.4, glob@3.2.11, accessibility-developer-tools@2.6.0, saucelabs@1.0.1, jasmine@2.3.2, source-map-support@0.2.10, request@2.57.0, selenium-webdriver@2.47.0)
大约5小时前,Gragotor发布了一个新的次要版本2.5.1,但是当我的构建在jenkins上运行时,它仍然在运行2.5.0。我不明白为什么。我查看了grunt Progrator runner的package.json,它将量角器定义为

"dependencies": {
"protractor": "^2.0.0",
"split": "~0.3.0",
"through2": "~0.5.1"
  },

因此,如果我正确理解“^”的话,它应该是最新的次要版本。我的依亲者的依亲关系要正确下拉,还需要做些什么吗?

当我用npm(3.3.3版)安装grunt量角器转轮时,protractor@2.5.1已安装:

您有两个选择:

  • 尝试使用
    cd project dir/&&rm-r node_modules/
    删除节点模块文件夹,然后重新运行
    npm install
    以重新安装依赖项
  • 我安装了
    grunt量角器-runner@2.1.0
    您的版本是
    2.0.0
    。尝试更新包,查看量角器版本是否随包更新

  • 我将grunt量角器运行程序的json包从~2.0更新到~2,并进行了npm安装。然后,当进入节点\模块/grunt量角器运行程序并安装npm时,然后是npm列表,这就是我得到的grunt量角器-runner@2.1.0/workspace//node_模块/grunt量角器├── grunt@0.4.5 ├── 咕噜咕噜-clean@0.4.1 ├── 咕噜咕噜-jshint@0.6.5 ├── 咕噜咕噜-nodeunit@0.2.2 ├── protractor@2.5.0 ├── split@0.3.3 └── through2@0.5.1这一点仍在继续protractor@2.5. 我已经做了rm-r节点_模块。为了将来参考,请将您的更新添加到原始问题中,因为这样会更容易阅读。我建议删除您的node_modules文件夹,如我的回答中的选项1所示,从您的package.json中删除grunt dragrator runner,然后运行
    npm安装&npm安装grunt量角器运行程序--save dev
    againOk这就是我的想法,然后弹出窗口说如果添加注释,直接执行,并认为这是这里的规则。让我试试你的建议。如果是小问题,那么对我的答案发表评论就可以了。请注意,我也对以前的评论进行了更新。在上面发布了评论/回答