全部产品

Nodejs语言

标题:node构建失败,node构建慢

回复:是否访问海外资源拉取海外资源,如果是使用云效的香港构建机群或者是指向国内源

标题:yarn构建慢,构建失败

回复:是否访问海外资源拉取海外资源,如果是使用云效的香港构建机群或者是指向国内源

标题:node构建拉取的依赖资源版本不一致

回复:您Google下package.json中^,~等有关的详细说明,比如https://www.cnblogs.com/IwishIcould/p/14008636.html

比如如下场景

云效拉的是1.79.1用户期望是1.71.0是么

^1.71.0这个的意思是会拉最新的版本,您改成1.71.0固定版本就好

node11

标题:node构建慢

回复:可以使用cnpm install或者是配置中换成国内源,具体可以看下这个构建加速的文档

https://thoughts.aliyun.com/sharespace/5e86a419546fd9001aee81f2/docs/5ef9ce648cb2520023f8218d

标题:node构建失败,提示JavaScript heap out of memory

回复:这个可以Google下JavaScript heap out of memory ,比如参考下:https://www.jianshu.com/p/2bf539bb949f

注意:--max_old_space_size=6144,max_old_space_size 尽量设置的不要超过6000

标题:node构建失败

回复:如果是构建编译需要较多内存资源的话,查看下--max_old_space_size这个值,云效目前分配的内存是6G

--max_old_space_size=6144 ,不能超过6144这个值,如果超过了 请修改max_old_space_size

标题:node构建失败

回复:

1、本地清理下node_modules,然后使用云效上构建是同样commit版本的代码进行构建,本地应该也会复现问题

2、或者是拉取云效的镜像到本地,然后本地启动镜像进去容器中执行git clone到代码切换到同样commit版本的代码,执行相同的命令应该也可以复现问题

附上操作如下:操作中的版本,云效上选择是什么就拉取对应的版本的,比如云效上选择的是13.14那么拉取13.14的镜像

docker pull registry.cn-beijing.aliyuncs.com/build-steps/node-build:13.14

docker run --entrypoint=/bin/bash -it registry.cn-beijing.aliyuncs.com/build-steps/node-build:13.14

启动起来进去容器后执行git clone ,下载到代码 切换到对应的commit,使用对应的commit进行执行对应的命令,应该有对应的git环境 走http clone,执行要使用你对应的代码版本去执行,你看下你现在的代码版本 和需要执行的代码版本是否一样,确保一样后,执行流水线中配置的同样的命令就可以了

标题:node构建,需要node版本

回复:您在自己的构建命令前面加上下面的命令就可以了:nvm install 15.13 && nvm use 15.13

标题:node构建失败,本地调试工具

回复:目前构建失败时会显示出本地调试工具,如果是成功时不显示的,如果是想成功也调试的话 可以在执行命令中可以加上非0退出码,比如exit 1

node44node55

标题:node构建发布后跟预期不一致

回复:按照如下思路排查下

源码 -> 构建产物 -> 分发到机器上 -> 解压 -> 启动 -> 页面验证有问题这种问题需要从后往前排查。

依次确认一下

1. 部署机器上的解压后文件内容是否符合预期

2. 部署机器上的解压前文件内容是否符合预期

3. 流水线归档的构建物的内容(可以在流水线运行页面的左侧下载到本地)是否符合预期

4. 构建时候的clone代码的日志里的代码commitId是否符合预期

这个过程需要用户您自己来确认,先定位到具体是哪里的问题,如果最后发现是完全相同的代码构建出来的不符合预期,在进行本地调试。比如删除缓存重新构建,或者修改node版本等

或者是按照如下方式验证:

拉取云效的镜像到本地,然后本地启动镜像进去容器中执行git clone到代码切换到同样commit版本的代码,执行相同的命令应该也可以复现问题

附上操作如下:操作中的版本,云效上选择是什么就拉取对应的版本的,比如云效上选择的是13.14那么拉取13.14的镜像

docker pull registry.cn-beijing.aliyuncs.com/build-steps/node-build:13.14

docker run --entrypoint=/bin/bash  -it registry.cn-beijing.aliyuncs.com/build-steps/node-build:13.14

启动起来进去容器后执行git clone ,下载到代码 切换到对应的commit,使用对应的commit进行执行对应的命令,应该有对应的git环境 走http clone,执行要使用你对应的代码版本去执行,你看下你现在的代码版本 和需要执行的代码版本是否一样,确保一样后,执行流水线中配置的同样的命令就可以了,用dockercp命令 将容器的弄出来传到服务器上,然后发布试下,应该就可以复现