您必须在 angular-cli 项目中才能在重新安装 angular-cli 后使用 build 命令

Posted

技术标签:

【中文标题】您必须在 angular-cli 项目中才能在重新安装 angular-cli 后使用 build 命令【英文标题】:You have to be inside an angular-cli project in order to use the build command after reinstall of angular-cli 【发布时间】:2017-01-01 04:58:16 【问题描述】:

我已在全球范围内安装了最新的 angular-cli,并且我的项目正在成功构建。

在阅读针对另一个问题的建议解决方案时,(https://github.com/angular/angular-cli/issues/917) 我卸载了全局 angular-cli 并将其安装为开发依赖项。

其他问题没有解决,所以我卸载了 dev-dependency 并再次全局重新安装了 angular-cli。 现在,当我尝试进行 ng build 时,我得到了错误:

您必须在 angular-cli 项目中才能使用构建命令

我的 angular-cli 版本没有改变。为什么我的项目没有被识别为 angular-cli 项目??

【问题讨论】:

就我而言,我必须将 @angular/cli 从 1.6.7 更新到 1.6.8 【参考方案1】:

与 John Pankowicz 的回答相同,但就我而言,我必须运行

npm install -g @angular/cli@latest

要匹配的版本。

【讨论】:

原来“@angular/cli”是“angular-cli”的更新版本。后一个全局安装在我的系统上,前一个在 package.json 中列出。在我更换包装后,它起作用了。 对我来说,只运行命令 npm install -g @angular/cli 解决了这个问题。 是的,它成功了! 这对我也有用。对于给我的项目来说,有匹配的版本很重要 我在 WebAPI 文件夹中,所以我不得不切换到 Angular CLI 文件夹:)【参考方案2】:
npm uninstall -g angular-cli @angular/cli
npm cache clean
npm install -g @angular/cli

在 Mac/Linux 上使用 sudo。

【讨论】:

npm 错误!从 npm@5 开始,npm 缓存可以从损坏问题中自我修复,并且保证从缓存中提取的数据是有效的。如果您想确保一切一致,请改用“npm cache verify”。 如果你遇到这个问题: 找不到模块 "@angular-devkit/build-angular" from.... 然后,运行它可能也有用: npm install --save-开发@angular-devkit/build-angular 第二步使用 --force 例如npm cache clean --force 这是唯一对我有用的东西。谢谢!【参考方案3】:

好的,找到了。

package.json 必须包含对 angular-cli 的依赖。

当我卸载本地 angular-cli 时,npm 也删除了依赖项。

【讨论】:

你能更详细地解释一下关于依赖的那部分吗? 卸载 angular-cli 作为开发依赖项,即 [ npm uninstall --save-dev angular-cli ] 从 packages.json "devDependencies": "@angular/cli": "^1.0.0", "..." ,因此您需要确保此条目在“devDependencies”下可用,必要时甚至在“dependencies”下可用 那你做了什么?你到底卸载了什么? -g 或 --save?【参考方案4】:

它在我的情况下有效

sudo npm uninstall -g angular-cli @angular/cli
sudo npm cache clean --force
npm install npm@latest -g
sudo npm install -g @angular/cli

【讨论】:

npm install npm@latest -g 可能不是必需的 谢谢!这为我解决了问题:)【参考方案5】:

我收到了同样的错误信息。但原因和解决方法略有不同。当我运行“ng -v”时,它显示了 angular-cli (1.0.0-beta.28.3) 和 @angular/cli (1.0.0-beta.31) 的不同版本。我又跑了:

npm install -g @angular/cli

现在两者都显示 1.0.0-beta.31 版本。错误消息消失了,“ng serve”现在可以工作了。 (是的 - 我重新安装了 @angular/cli 并且更新了 angular-cli 版本。)

【讨论】:

请注意,刷新 angular-cli 需要 非常 很长时间,甚至一个小时。在时间紧迫的任务中,它可能会毁掉你的项目。 对我来说,我正在尝试 npm install -g angular-cli,现在已弃用。我不得不 npm install -g @angular/cli【参考方案6】:

使用npm install angular-cli --save-dev

【讨论】:

P.S 现在已弃用... angular-cli 已正式移至@angular/cli 即使它已被弃用也解决了我的问题。干杯伙伴。【参考方案7】:

逐步执行以下命令:

sudo npm uninstall -g angular-cli @angular/cli

sudo npm cache clean

npm install npm@latest -g

sudo npm install -g @angular/cli

npm rebuild node-sass --force

【讨论】:

【参考方案8】:

当我发现自己遇到同样的问题时,这对我有帮助:

npm uninstall -g angular-cli @angular/cli
npm cache clean --force
npm install -g @angular/cli@latest

【讨论】:

【参考方案9】:
npm uninstall -g angular-cli
npm uninstall --save angular-cli
npm uninstall -g @angular/cli
npm uninstall --save @angular/cli
npm cache clean
npm install --save-dev @angular/cli@latest

【讨论】:

【参考方案10】:

就我而言(Mac OS X 和以前使用的 Angular 1.5 环境)

npm -g cache clean --force

npm cache clean --force

工作。 (之后npm install -g @angular/cli@latest

【讨论】:

【参考方案11】:

它适用于我的npm install -g @angular/cli@latest

【讨论】:

【参考方案12】:

当 node 版本和 angular/cli 版本不兼容时会出现此错误。因此使用以下命令将 cli 版本更新为最新版本

npm install -g @angular/cli@latest

【讨论】:

【参考方案13】:
npm uninstall -g angular-cli @angular/cli

npm cache clean --force

npm install -g @angular-cli/latest

我曾尝试过类似的命令并为我工作,但请确保您在具有管理员权限的命令提示符下使用它们

【讨论】:

【参考方案14】:

可能是你的版本有问题。

npm install -g @angular/cli@latest

上面的运行对我有用。谢谢!

【讨论】:

【参考方案15】:

我遇到了同样的问题 - 结果证明我使用的是已弃用的 angular-cli 而不是 @angular/cli。我的开发团队使用了后者,我花了一些时间才注意到我们使用的是不同版本的 angular-cli。

【讨论】:

【参考方案16】:

只需将其包含在 devDependencies 部分的 package.json 中

"angular-cli": "1.0.0-beta.25.5"

如果您在全局安装了另一个版本的 cli,则不必安装它。

当我在不同的项目中一次使用 angular2 和 4 时遇到了这个问题。所以 angular4 - 需要 angular-cli@latest 和 angular2 需要 angular-cli 上面的版本。

【讨论】:

【参考方案17】:

我在运行我的项目时遇到了同样的问题: 我发现如果您的项目正在使用 package.json 中任何东西的特定版本,请找出并安装该依赖项的特定版本,就像我一样,npm install @angular/cli@ ^4.0.0.

【讨论】:

【参考方案18】:

别忘了使用 --force:

npm cache clean --force

【讨论】:

【参考方案19】:

我遇到了类似的问题,但什么都没有解决,但后来我按照以下步骤操作,它对我有用。 当我以管理员身份运行 cmd 时,它对我来说很好。

    首先以管理员身份运行命令提示符。

    创建新项目。

如果仍然无法创建项目,请删除文件夹及其所有文件,然后运行ng new <project name>,然后运行ng serve

如果没有任何效果,只需卸载节点和与之相关的所有其他文件并按照上述步骤操作

【讨论】:

【参考方案20】:
npm uninstall -g angular-cli 

npm install -g @angular/cli

就是这样!

【讨论】:

欢迎来到 Stack Overflow!请将代码和数据添加为文本 (using code formatting),而不是图像。图片:A)不允许我们复制粘贴代码/错误/数据进行测试; B) 不允许根据代码/错误/数据内容进行搜索;和many more reasons。一般来说,文本格式的代码/错误/数据>>>>作为图像的代码/错误/数据>>没有。除了代码格式的文本之外,只有在图像添加了一些重要的东西,而不仅仅是文本代码/错误/数据传达的内容时,才应该使用图像。 感谢您的欢迎。下次我会处理的。

以上是关于您必须在 angular-cli 项目中才能在重新安装 angular-cli 后使用 build 命令的主要内容,如果未能解决你的问题,请参考以下文章

现有文件中的模糊组织: .... 。必须指定 --org 命令行参数才能重新创建项目

反应我必须重新渲染父母才能重新渲染孩子吗?

如何在angular-cli项目中运行单个.spec.ts文件?

您是不是必须重新启动apache才能使.htaccess中的重写规则生效?

如何覆盖 Angular-CLI 项目中的 node_module 错误类型?

angular-cli 自定义原理图/集合