今天写代码想要做一个发布版本,突然发现docker build失败了,仔细检查,发现vue3的前段代码npm run build报错了,错误信息如下:
#0 23.25 ✓ 1662 modules transformed.
#0 23.45 x Build failed in 6.87s
#0 23.45 error during build:
#0 23.45 Cannot read properties of null (reading 'render')
#0 23.45 at ConditionalExpression.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:12221:24)
#0 23.45 at TemplateLiteral.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:2905:28)
#0 23.45 at TemplateLiteral.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:14671:15)
#0 23.45 at renderCallArguments (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:11721:26)
#0 23.45 at CallExpression.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:11948:9)
#0 23.45 at ExpressionStatement.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:2909:23)
#0 23.45 at ExpressionStatement.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:6416:15)
#0 23.45 at renderStatementList (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:1870:25)
#0 23.45 at BlockStatement.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:6486:13)
#0 23.45 at IfStatement.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:12620:29)
#0 23.45 at renderStatementList (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:1870:25)
#0 23.45 at BlockStatement.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:6486:13)
#0 23.45 at ArrowFunctionExpression.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:2909:23)
#0 23.45 at ConditionalExpression.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:12204:29)
#0 23.45 at VariableDeclarator.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:12803:18)
#0 23.45 at VariableDeclaration.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:15056:28)
#0 23.45 at renderStatementList (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:1870:25)
#0 23.45 at BlockStatement.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:6486:13)
#0 23.45 at ArrowFunctionExpression.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:2909:23)
#0 23.45 at VariableDeclarator.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:12803:18)
#0 23.45 at VariableDeclaration.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:15056:28)
#0 23.45 at renderStatementList (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:1870:25)
#0 23.45 at Program.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:14173:13)
#0 23.45 at Module.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:16887:18)
#0 23.45 at Chunk.renderModules (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:18643:41)
#0 23.45 at Chunk.render (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:18125:111)
#0 23.45 at file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:19820:72
#0 23.45 at Array.map (<anonymous>)
#0 23.45 at renderChunks (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:19820:53)
#0 23.45 at Bundle.generate (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:20083:19)
#0 23.45 at async file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:22780:27
#0 23.45 at async catchUnfinishedHookActions (file:///app/client/node_modules/.pnpm/rollup@4.34.1/node_modules/rollup/dist/es/shared/node-entry.js:22162:16)
#0 23.45 at async buildEnvironment (file:///app/client/node_modules/.pnpm/vite@6.0.11_@types+node@20.17.16_sass@1.83.4/node_modules/vite/dist/node/chunks/dep-M1IYMR16.js:51082:16)
#0 23.45 at async Object.defaultBuildApp [as buildApp] (file:///app/client/node_modules/.pnpm/vite@6.0.11_@types+node@20.17.16_sass@1.83.4/node_modules/vite/dist/node/chunks/dep-M1IYMR16.js:51513:5)
#0 23.45 at async CAC.<anonymous> (file:///app/client/node_modules/.pnpm/vite@6.0.11_@types+node@20.17.16_sass@1.83.4/node_modules/vite/dist/node/cli.js:853:7)
------
Dockerfile:9
根本一头雾水。5天前的发布还没有问题,本地一直没有问题。
于是尝试本地回退,今天发布的是1.3.0,回退到1.2.0,结果发现还是前端编译失败。
这下直接麻爪了,只好拿着错误搜索,终于在一个论坛上找到了一丝可能,试了一下
因为我的packages.json里没有配这个包,于是搜索发现是pnpm用到这个包,运行下面命令
pnpm add rollup@4.33.0
再build,就通过了。
我还不太了解为什么我本地加了这个,docker编译也能通过。不过如果docker还有问题的话,就给Dockerfile里ui的编译代码那块,pnpm i之前增加上面那条命令就好了。