首页 Coding自动化执行流程(构建计划)报错:npm missing script

报错信息如下:
左边是流程节点配置,右边是报错信息左边是流程节点配置,右边是报错信息

提示错误内容为:

1
2
+ npm run XXX
2npm ERR! missing script:

意思呢就是说在执行XXX脚本的时候,没有找到这个脚本。

出错的流程节点代码在package.json文件中的配置如下:
脚本执行配置脚本执行配置
这里必须要多提一下,这个XXX脚本在本地执行没有问题,只是提交到服务器上之后才报的 npm run XXX 错误,说明是服务器上的执行流程配置有误。

Coding的自动化流程配置如下:
其实就是执行了一下那个脚本而已 可以和前后的配置对比着看一下其实就是执行了一下那个脚本而已 可以和前后的配置对比着看一下

怀疑是package.json的配置问题

检查了半天没看出毛病来…于是新建了一个新的流程节点。因为之前的流程节点是我从其他项目里拷贝过来,然后修改的,所以我想新建个流程与之前的配置进行对比,找出到底错在哪里。

果不其然,两个流程节点的配置文件一对比,就看到错误出现在哪里了!

左右一对比 错误就简单明了了左右一对比 错误就简单明了了

虽然还没有经过严格的回归测试,但是应该出现在 左边高亮代码中,npm run XXX npm 前的空格上。

但后来当我进行严格的测试之后,发现并不是这里的问题。即使删了npm run XXX 前的空格,把双引号改成单引号之后,仍然报 missing script 的错误。

原来是执行代码库选错了

这不得不让我怀疑,是不是源代码的问题。基于这个思路,我开始检查两个流程执行的的代码库是否一致。

就在基础信息里让我找到了问题。不知道何时在代码仓库里多了一个不是我从本地提交的项目,如果是基于这个项目执行自动化流程,那么当然找不到我想要执行的脚本了。

代码仓库记得选择我们上传的代码 执行其他的代码会出错代码仓库记得选择我们上传的代码 执行其他的代码会出错

在创建流程的时候 会自动选择示例项目在创建流程的时候 会自动选择示例项目

后来又研究了下,新出现的这个项目 node-express-example 其实是用于提交成品库的。在构建过程新建时,如果选择示例项目,就会自动生成这个 node-express-example 项目,而执行构建计划是基于这个项目的,当然就不能执行我想要的脚本啦。问题到这里算是水落石出,彻底搞清楚bug出现在哪里了。