我无法使用lerna在纱线工作区上将Angular应用从6.1更新到Angular 8

时间:2019-07-06 05:39:22

标签: angular lerna yarn-workspaces

我想将我的角度应用程序从6.1升级到8.0。我的设置有lerna和yarn工作区。我想升级仓库中的每个软件包。当我遵循https://update.angular.io/上的更新说明时,我不会更新子软件包。我试图搜索此问题,但没有找到解决方案。

我运行“ ng update @ angular / core @ angular / cli”,但我只是设法更新了主要的package.json包,但是当我检查子包时,它们仍处于6.1角度。我也尝试过对此https://www.npmjs.com/package/lerna-update-wizard进行更新,但是仍然失败。

如果有人遇到这种情况,我将不胜感激。谢谢

2 个答案:

答案 0 :(得分:0)

现在,我的版本是8。因此,下一步是将Angular CLI 6的版本升级到Angular CLI 8。

sudo npm uninstall -g angular-cli // For Mac
npm uninstall -g angular-cli 

//对于Windows在管理员模式下打开Powershell 然后,我们需要使用以下命令清除缓存。

sudo npm cache verify
sudo npm cache verify

然后您需要点击以下命令。

sudo npm cache clea n

现在,使用以下命令安装Angular CLI

sudo npm install -g @angular/cli@latest

在更新了全局和本地软件包之后,请清除缓存以避免错误。

sudo npm cache verify
npm cache clean (for older npm versions)

更新Angular软件包

如果您已创建Angular项目,请进入该文件夹并键入以下命令。

ng update @angular/core
Upgrading RxJS

您可以使用ng update命令更新RxJS。

ng update rxjs

通过开发服务器生成和服务Angular项目创建并运行新项目。

ng new angular8demo
cd angular8demo
ng serve

答案 1 :(得分:0)

我找到了一个答案,如果您将软件包设置为monorepo,则需要使用软件包来更新每个有角度的应用程序package.json

我使用了https://www.npmjs.com/package/npm-check-updates

运行lerna exec "npx npm-check-updates -u '/^(@angular).*$/'",仅将角度软件包升级到最新版本。 /^(@angular).*$/表示仅选择角度应用。