npm在詹金斯构建上过早关闭

时间:2019-04-04 16:54:21

标签: node.js jenkins npm deployment node-gyp

我正在为内部NodeJS Express项目设置一个Jenkins构建。

该项目使用一些本机库(用C编写)。反复尝试设置Python和MSBuild Tools(使用windows-build-tools和不使用)之后,我没有设法使构建正常进行。

Jenkins脚本:

pipeline {
  agent any

  stages {
    stage('Download source') {
        steps {
            checkout([
                $class: 'GitSCM', 
                branches: [[name: '*/branch-name']], 
                userRemoteConfigs: 
                [
                    [
                        credentialsId: 'cred-id', 
                        url: 'gitURL'
                    ]
                ]
            ])
        }
    }

    stage('Npm install') {
      steps {
        bat "npm install"
      }
    }
  }     
}

我尝试使用NodeJS插件,同样的问题。授予C:\Program Files (x86)\Jenkins文件夹和每个子目录的权限,重新安装了所有内容(软件包,具有不同版本的Node,甚至是Windows OS),但输出始终为:

step: npm install
npm ERR! premature close

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Windows\system32\config\systemprofile\AppData\Roaming\npm-cache\_logs\2019-04-04T16_69_111Z-debug.log

奇怪的是是,当我从npm install文件夹运行%JENKINS_HOME%workspace/ProjectName时,它将构建并安装所有内容,而没有任何警告或错误,并且运行平稳。

很抱歉,我为此主题进行了为期3周的研究,看到了许多文章和帖子,但是这个问题已经存在了较长的时间,我们无法构建任何Node项目。

1 个答案:

答案 0 :(得分:1)

好的,经过2个星期的痛苦尝试后,唯一可行的解​​决方案是:

componentDidUpdate(prevProps) { // Typical usage (don't forget to compare props): if (this.props.lastSeen !== prevProps.lastSeen) { // un-subscribe and re-subsricbe with modified query } }

代替:

yarn install