Team City 中的 WebPack css-loader 失败
WebPack css-loader failure in Team City
我正在为网站授权 Team City 构建配置(使用 VueJs 完成)。它使用 yarn 来构建网站,问题在于它用于捆绑最终资源的 web pack。
所以构建就像做yarn run build
一样简单
构建在本地运行良好。但是在 Team City 中它失败并在 css-loader web pack 任务中出现以下错误。
[15:13:08][Step 7/8] ERROR in ./~/css-loader!./~/vue-loader/lib/style-compiler?{"id":"data-v-45a5b6de","scoped":false,"hasInlineConfig":true}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue
[15:13:08][Step 7/8] Module build failed: SyntaxError: Unexpected token {
[15:13:08][Step 7/8] at exports.runInThisContext (vm.js:53:16)
[15:13:08][Step 7/8] at Module._compile (module.js:373:25)
[15:13:08][Step 7/8] at Object.Module._extensions..js (module.js:416:10)
[15:13:08][Step 7/8] at Module.load (module.js:343:32)
[15:13:08][Step 7/8] at Function.Module._load (module.js:300:12)
[15:13:08][Step 7/8] at Module.require (module.js:353:17)
[15:13:08][Step 7/8] at require (internal/module.js:12:17)
[15:13:08][Step 7/8] at loadLoader (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\loadLoader.js:13:17)
[15:13:08][Step 7/8] at iteratePitchingLoaders (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\LoaderRunner.js:169:2)
[15:13:08][Step 7/8] at iteratePitchingLoaders (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\LoaderRunner.js:165:10)
[15:13:08][Step 7/8] at D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\LoaderRunner.js:173:18
[15:13:08][Step 7/8] at loadLoader (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\loadLoader.js:36:3)
[15:13:08][Step 7/8] at iteratePitchingLoaders (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\LoaderRunner.js:169:2)
[15:13:08][Step 7/8] at runLoaders (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\LoaderRunner.js:362:2)
[15:13:08][Step 7/8] at NormalModule.doBuild (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\webpack\lib\NormalModule.js:179:3)
[15:13:08][Step 7/8] at NormalModule.build (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\webpack\lib\NormalModule.js:268:15)
[15:13:08][Step 7/8] @ ./~/extract-text-webpack-plugin/loader.js?{"omit":1,"remove":true}!./~/vue-style-loader!./~/css-loader!./~/vue-loader/lib/style-compiler?{"id":"data-v-45a5b6de","scoped":false,"hasInlineConfig":true}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue 4:14-261
[15:13:08][Step 7/8] @ ./src/App.vue
[15:13:08][Step 7/8] @ ./src/main.js
我检查了一些东西,例如;
- 比较节点版本(服务器有节点 4.x 而客户端有 6.x)
- 比较 npm 版本(两者都有 3.10.x)
- 在本地和 Team City 服务器中比较 node_modules
- 检查 Team City 中是否有 .babelrc 文件
- 检查服务器中的node/npm版本
- 在构建之前使用 npm 缓存清理并执行全新的 npm 安装
由于我们不拥有此 'code',因此我很难更改任何代码。我们中 none 的人也有使用 VueJs 或 WebPack 的经验。另一方面,它在本地工作。难道是node版本?
非常感谢任何想法或指示。
这最终成为 TeamCity 服务器中 Node 4 版本的限制。升级到 Node 6 后,它开始正常工作。
我正在为网站授权 Team City 构建配置(使用 VueJs 完成)。它使用 yarn 来构建网站,问题在于它用于捆绑最终资源的 web pack。
所以构建就像做yarn run build
构建在本地运行良好。但是在 Team City 中它失败并在 css-loader web pack 任务中出现以下错误。
[15:13:08][Step 7/8] ERROR in ./~/css-loader!./~/vue-loader/lib/style-compiler?{"id":"data-v-45a5b6de","scoped":false,"hasInlineConfig":true}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue
[15:13:08][Step 7/8] Module build failed: SyntaxError: Unexpected token {
[15:13:08][Step 7/8] at exports.runInThisContext (vm.js:53:16)
[15:13:08][Step 7/8] at Module._compile (module.js:373:25)
[15:13:08][Step 7/8] at Object.Module._extensions..js (module.js:416:10)
[15:13:08][Step 7/8] at Module.load (module.js:343:32)
[15:13:08][Step 7/8] at Function.Module._load (module.js:300:12)
[15:13:08][Step 7/8] at Module.require (module.js:353:17)
[15:13:08][Step 7/8] at require (internal/module.js:12:17)
[15:13:08][Step 7/8] at loadLoader (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\loadLoader.js:13:17)
[15:13:08][Step 7/8] at iteratePitchingLoaders (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\LoaderRunner.js:169:2)
[15:13:08][Step 7/8] at iteratePitchingLoaders (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\LoaderRunner.js:165:10)
[15:13:08][Step 7/8] at D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\LoaderRunner.js:173:18
[15:13:08][Step 7/8] at loadLoader (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\loadLoader.js:36:3)
[15:13:08][Step 7/8] at iteratePitchingLoaders (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\LoaderRunner.js:169:2)
[15:13:08][Step 7/8] at runLoaders (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\loader-runner\lib\LoaderRunner.js:362:2)
[15:13:08][Step 7/8] at NormalModule.doBuild (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\webpack\lib\NormalModule.js:179:3)
[15:13:08][Step 7/8] at NormalModule.build (D:\Program Files\BuildAgent3\work0b0e3b148e7b10\Main\MyApp\node_modules\webpack\lib\NormalModule.js:268:15)
[15:13:08][Step 7/8] @ ./~/extract-text-webpack-plugin/loader.js?{"omit":1,"remove":true}!./~/vue-style-loader!./~/css-loader!./~/vue-loader/lib/style-compiler?{"id":"data-v-45a5b6de","scoped":false,"hasInlineConfig":true}!./~/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue 4:14-261
[15:13:08][Step 7/8] @ ./src/App.vue
[15:13:08][Step 7/8] @ ./src/main.js
我检查了一些东西,例如;
- 比较节点版本(服务器有节点 4.x 而客户端有 6.x)
- 比较 npm 版本(两者都有 3.10.x)
- 在本地和 Team City 服务器中比较 node_modules
- 检查 Team City 中是否有 .babelrc 文件
- 检查服务器中的node/npm版本
- 在构建之前使用 npm 缓存清理并执行全新的 npm 安装
由于我们不拥有此 'code',因此我很难更改任何代码。我们中 none 的人也有使用 VueJs 或 WebPack 的经验。另一方面,它在本地工作。难道是node版本?
非常感谢任何想法或指示。
这最终成为 TeamCity 服务器中 Node 4 版本的限制。升级到 Node 6 后,它开始正常工作。