ABP Framework Angular项目无法运行,缺失@volo目录报错
ABP Angular项目构建失败:找不到@volo目录的问题排查与解决
问题描述
通过ABP CLI命令abp new MyProject.Cloud -u angular --theme basic创建新解决方案后,ASP.NET Core部分可正常构建并完成数据库配置,但Angular项目无法构建。执行yarn和yarn start后出现如下报错:
[error] Error: ENOENT: no such file or directory, lstat 'E:\Repositories\abpTest\angular\node_modules\@volo' at Object.realpathSync (node:fs:2552:7) at resolveGlobalStyles (E:\Repositories\abpTest\angular\node_modules\@angular-devkit\build-angular\src\webpack\configs\styles.js:64:33) at getStylesConfig (E:\Repositories\abpTest\angular\node_modules\@angular-devkit\build-angular\src\webpack\configs\styles.js:97:70) at E:\Repositories\abpTest\angular\node_modules\@angular-devkit\build-angular\src\builders\dev-server\index.js:144:43 at E:\Repositories\abpTest\angular\node_modules\@angular-devkit\build-angular\src\utils\webpack-browser-config.js:75:16 at generateWebpackConfig (E:\Repositories\abpTest\angular\node_modules\@angular-devkit\build-angular\src\utils\webpack-browser-config.js:64:40) at async generateBrowserWebpackConfigFromContext (E:\Repositories\abpTest\angular\node_modules\@angular-devkit\build-angular\src\utils\webpack-browser-config.js:125:20) at async generateI18nBrowserWebpackConfigFromContext (E:\Repositories\abpTest\angular\node_modules\@angular-devkit\build-angular\src\utils\webpack-browser-config.js:73:20) at async setup (E:\Repositories\abpTest\angular\node_modules\@angular-devkit\build-angular\src\builders\dev-server\index.js:141:47)
node_modules目录中不存在@volo文件夹,但此前商业试用版解决方案中存在该目录。已尝试ABP CLI登出账号、清理项目等操作,问题仍未解决;在从未安装过ABP Commercial的笔记本上测试也出现相同问题,怀疑与basic主题相关。
解决步骤
- 修正angular.json中的样式引用:打开Angular项目根目录下的
angular.json,搜索所有包含@volo的样式路径(如node_modules/@volo/abp.commercial.ng.ui/styles/...),将其替换为开源basic主题对应的路径,例如@abp/ng.theme.basic/styles/global.scss。 - 彻底清理并重装依赖:
- 删除Angular目录下的
node_modules文件夹和yarn.lock文件 - 执行
yarn cache clean清空Yarn缓存 - 重新运行
yarn install安装依赖
- 删除Angular目录下的
- 更新ABP CLI到最新版:执行
dotnet tool update Volo.Abp.Cli -g更新CLI,再用最新CLI重新生成项目:abp new MyProject.Cloud -u angular --theme basic - 手动补充依赖包:若确认是模板未正确引入依赖,执行
yarn add @abp/ng.theme.basic手动安装basic主题包
内容的提问来源于stack exchange,提问作者cjsmith87
相关产品推荐
相关产品推荐

