【问题标题】:Angular 8 Angular-cli generates build instead of dist directory with ng buildAngular 8 Angular-cli 使用 ng build 生成 build 而不是 dist 目录
【发布时间】:2020-05-16 23:15:36
【问题描述】:

我在 Stackoverflow 上检查了十几个问题,但仍然无法正常工作。

我在全局和我的项目中都安装了最新的@angular/cli。当我运行ng version 时,输出如下:

Angular CLI: 8.3.23
Node: 10.15.3
OS: win32 x64
Angular: 8.0.3
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.803.23
@angular-devkit/build-angular     0.803.23
@angular-devkit/build-optimizer   0.803.23
@angular-devkit/build-webpack     0.803.23
@angular-devkit/core              8.3.23
@angular-devkit/schematics        8.3.23
@angular/cli                      8.3.23
@angular/http                     7.2.16
@ngtools/webpack                  8.3.23
@schematics/angular               8.3.23
@schematics/update                0.803.23
rxjs                              6.5.4
typescript                        3.4.5
webpack                           4.39.2

我试过了

npm uninstall @angular/cli -g;
npm cache clean --force;
npm install @angular/cli -g;
npm cache verify;
close / open console;
cd <project>;
npm install;
ng --version; (result: 8.2.23)

之后,我使用ng build --prod,它创建了一个build目录而不是dist目录。

部分文件夹结构:

.vscode 
arm-templates 
build 
e2e 
node_modules 
server 
src 
deployment 
.gitignore 
angular.json 
azure-pipelines.yml 
buildscript.-s 

【问题讨论】:

  • 你能分享你的 angular.json 吗?
  • 你能分享你angular.json的内容吗?应该有类似outputDir
  • 检查你的文件angular.json,你有一个“标签”outputPath(它在项目下-->你的应用程序-->架构师-->构建-->选项)
  • angular.json outPut 路径中显示build。当我用 dist 替换它时,它按预期工作。知道为什么它默认是 build 吗?我花了好几天才弄明白,应该早点寻求帮助。
  • 我的意思是 outputPath 而不是 outPut。它解决了我的问题。谢谢。 @BlindDespair

标签: angular webpack angular8 ng-build nodist


【解决方案1】:

在您的angular.json 中检查outputPath。我想它已设置为构建自动取款机。你可以用 dist 替换它,这样它就会构建到 dist 中。

【讨论】:

  • 知道为什么默认是build吗?
  • 据我所知dist/{projectName} 是默认输出。这个有角度的应用程序有多少年了?可能是有人已经开始手动构建,或者它曾经使用旧版本的 angular 构建(我不确定,因为我不记得了)......但是如果你用最新的 angular 做 ng new,你会看到它设置为dist
  • 我使用 Web Template Studio (marketplace.visualstudio.com/…) 创建了 2 个月大。可能就是这个问题,没想到微软竟然偏离了dist,把build引入了fml。
  • 我肯定会责怪这一点。您可以通过使用此工具创建另一个空的 Angular 项目来检查它,并查看它使用哪种 outputPath
猜你喜欢
  • 1970-01-01
  • 2017-07-27
  • 1970-01-01
  • 1970-01-01
  • 2017-11-12
  • 1970-01-01
  • 1970-01-01
  • 2019-04-06
  • 2018-01-02
相关资源
最近更新 更多