在ci管道中,我尝试使用pnpm而不是npm作为包管理器,但是用于编译常春藤不兼容库的postinstall脚本并不像预期的那样运行。
控制台输出显示执行了postinstall脚本,但是pnpm install进程在没有执行ngcc的情况下完成。
devDependencies:
+ @angular-devkit/build-angular 0.1001.7
+ @angular-devkit/build-ng-packagr 0.1001.7
+ @angular/cli 10.1.7
+ @angular/compiler-cli 10.2.1
+ @angular/language-service 10.2.1
+ @ngxs/devtools-plugin 3.7.1
+ @nrwl/cli 10.4.4
+ @nrwl/cypress 10.3.1
+ @nrwl/jest 10.3.1
+ @nrwl/workspace 10.3.1
+ @types/jest 26.0.8
+ @types/leaflet 1.5.19
+ @types/node 14.0.27
+ codelyzer 5.2.2
+ cypress 4.12.1
+ cypress-localstorage-commands 1.3.0
+ dotenv 8.2.0
+ eslint 7.3.1
+ husky 4.3.5
+ jest 26.2.2
+ jest-preset-angular 8.3.1
+ lint-staged 10.5.3
+ ng-packagr 10.1.2
+ prettier 2.0.5
+ ts-jest 26.4.0
+ ts-node 8.10.2
+ tslint 6.1.3
+ typescript 4.0.5
> package@version postinstall /home/...
> ngcc --properties es2015这就是发生的一切。有人能帮我吗?
发布于 2022-09-22 21:17:17
试试这个:
ngcc脚本中的postinstall命令以包含--loglevel debug。
这将让您知道NGCC正在做什么,即使它没有找到任何入口点来分析(这可能是正在发生的,因为PNPM结构node_modules在某种程度上不适用于NGCC );.npmrc文件,包括以下内容:
节点链接器=悬挂
这指示PNPM使用没有符号链接的平面node_modules (更多信息)。别担心,PNPM的速度并不仅仅来自于它的孤立(符号链接)依赖策略。在我的测试中,悬挂和隔离是非常相似的时间。pnpm install重新安装它。
您应该看到NGCC的输出(希望)告诉您它找到了入口点,并详细说明了它的处理过程。https://stackoverflow.com/questions/65195613
复制相似问题