Рабочее пространство Yarn и угловой «Не удается найти каталог «node_modules»».

#angular #yarn-workspaces

Вопрос:

После попытки переключить проект на использование рабочих пространств yarn я, похоже, не могу заставить работать команду компилятора angular. Я попытался использовать команду yarn dlx для использования версии компилятора angular, которая должна быть установлена для конкретной рабочей области, в которой выполняется команда, но angular/yarn выдает ошибку

  YN0000: > yarn dlx -p @angular/cli ng build --prod amp;amp; npm run merge amp;amp; npm run clean
➤ YN0000: 
➤ YN0000: ➤ YN0000: ┌ Resolution step
➤ YN0000: ➤ YN0061: │ request@npm:2.88.2 is deprecated: request has been deprecated, see https://github.com/request/request/issues/3142
➤ YN0000: ➤ YN0061: │ uuid@npm:3.4.0 is deprecated: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
➤ YN0000: ➤ YN0061: │ har-validator@npm:5.1.5 is deprecated: this library is no longer supported
➤ YN0000: ➤ YN0000: └ Completed in 1s 312ms
➤ YN0000: ➤ YN0000: ┌ Fetch step
➤ YN0000: ➤ YN0000: └ Completed
➤ YN0000: ➤ YN0000: ┌ Link step
➤ YN0000: ➤ YN0007: │ @angular/cli@npm:12.0.3 must be built because it never did before or the last one failed
➤ YN0000: ➤ YN0000: └ Completed in 1s 218ms
➤ YN0000: ➤ YN0000: Done with warnings in 2s 664ms
➤ YN0000: 
➤ YN0000: Your global Angular CLI version (12.0.3) is greater than your local version (10.0.8). The local Angular CLI version is used.
➤ YN0000: 
➤ YN0000: To disable this warning use "ng config -g cli.warnings.versionMismatch false".
➤ YN0000: An unhandled exception occurred: Cannot locate the 'node_modules' directory.
➤ YN0000: See "/private/var/folders/_1/5253gc4s28l4740x6hm0b8500000gp/T/ng-mBJIHY/angular-errors.log" for further details.
➤ YN0000: Done in 20s 310ms
 

Я пытался найти решение этой проблемы, но я новичок в версии 2 yarn и не понимаю, какое решение мне нужно изучить, чтобы устранить проблему.

Ответ №1:

Я нашел ответ. При работе с рабочими пространствами angular и yarn убедитесь, что в вашем файле yarnrc.yml у вас есть:

 nodeLinker: node-modules
 

Это позволит angular решить необходимые модули. В настоящее время это проблема с angular.