npm 피어 종속성을 자동으로 설치하는 방법은 무엇입니까?
예를 들어 Angular2를 설치하는 경우:
npm install --save angular2
temp@1.0.0 /Users/doug/Projects/dougludlow/temp
├── angular2@2.0.0-beta.3
├── UNMET PEER DEPENDENCY es6-promise@^3.0.2
├── UNMET PEER DEPENDENCY es6-shim@^0.33.3
├── UNMET PEER DEPENDENCY reflect-metadata@0.1.2
├── UNMET PEER DEPENDENCY rxjs@5.0.0-beta.0
└── UNMET PEER DEPENDENCY zone.js@0.5.11
npm WARN angular2@2.0.0-beta.3 requires a peer of es6-promise@^3.0.2 but none was installed.
npm WARN angular2@2.0.0-beta.3 requires a peer of es6-shim@^0.33.3 but none was installed.
npm WARN angular2@2.0.0-beta.3 requires a peer of reflect-metadata@0.1.2 but none was installed.
npm WARN angular2@2.0.0-beta.3 requires a peer of rxjs@5.0.0-beta.0 but none was installed.
npm WARN angular2@2.0.0-beta.3 requires a peer of zone.js@0.5.11 but none was installed.
피어 종속성도 설치할 수 있는 마법 플래그가 npm에 전달할 수 있습니까?하나도 못 찾았는데요피어 종속성을 수동으로 복사하여 붙여넣고 올바른 버전이 있는지 확인하는 것은 지루합니다.
다시 말해서, 저는 다음과 같은 일을 하지 않는 것이 좋습니다.
npm install --save angular2@2.0.0-beta.3 es6-promise@^3.0.2 es6-shim@^0.33.3 reflect-metadata@0.1.2 rxjs@5.0.0-beta.0 zone.js@0.5.11
더 좋은 방법은 무엇입니까?
npm 버전 7 이상
npm v7은 자동 peerDependencies 설치를 다시 도입했습니다.이제 V7에서는 V3 이전 버전과 마찬가지로npm i
모든 peerDependencies가 자동으로 설치되어야 합니다.
그들은 오래된 문제를 여러 종속자 간의 버전 호환성으로 수정하기 위해 몇 가지 변경을 가했습니다.당신은 토론과 발표를 볼 수 있습니다.
이전 답변
피어 종속성의 자동 설치는 해결하려고 시도한 것보다 더 많은 문제를 야기하기 때문에 npm 3과 함께 명시적으로 제거되었습니다.예를 들어 다음과 같은 내용을 참조할 수 있습니다.
- https://blog.npmjs.org/post/110924823920/npm-weekly-5
- https://github.com/npm/npm/releases/tag/v3.0.0
그래서 아니요, 주어진 이유로, 당신은 npm 3 이상으로 자동으로 설치할 수 없습니다.
다시 써서 해결했습니다.package.json
경고의 정확한 값을 사용합니다.
실행 시 경고npm
:
npm WARN angular2@2.0.0-beta.3 requires a peer of es6-shim@^0.33.3 but none was installed.
npm WARN angular2@2.0.0-beta.3 requires a peer of reflect-metadata@0.1.2
인package.json
글을 쓰다
"es6-shim": "^0.33.3",
"reflect-metadata": "0.1.2",
그런 다음 삭제node_modules
디렉토리입니다.
마지막으로 아래 명령을 실행합니다.
npm install
이 시나리오에서 유용한 치트 코드와 다른 몇 가지...
├── UNMET PEER DEPENDENCY @angular/common@4.0.2
├── UNMET PEER DEPENDENCY @angular/compiler@4.0.2
├── UNMET PEER DEPENDENCY @angular/compiler-cli@4.0.2
├── UNMET PEER DEPENDENCY @angular/core@4.0.2
├── UNMET PEER DEPENDENCY @angular/forms@4.0.2
├── UNMET PEER DEPENDENCY @angular/http@4.0.2
├── UNMET PEER DEPENDENCY @angular/platform-browser@4.0.2
├── UNMET PEER DEPENDENCY @angular/platform-browser-dynamic@4.0.2 >
- 오류를 코드 편집기에 복사하여 붙여넣습니다.
- 커서로 원하지 않는 부분을 강조 표시합니다.이 경우
├── UNMET PEER DEPENDENCY
- 명령 + d를 여러 번 누릅니다.
- 삭제를 두 번 누릅니다. (실수로 강조 표시한 경우 공백을 누릅니다.
├── UNMET PEER DEPENDENCY
) - 한 번만 눌러주세요.더하다
npm install
- 한 번 눌러주세요.더하다
--save
- 항목을 다시 CLI에 복사하고 실행합니다.
npm install @angular/common@4.0.2 @angular/compiler@4.0.2 @angular/compiler-cli@4.0.2 @angular/core@4.0.2 @angular/forms@4.0.2 @angular/http@4.0.2 @angular/platform-browser@4.0.2 @angular/platform-browser-dynamic@4.0.2 --save
나는 다음과 같은 오류를 가진 npm 패키지를 개발할 때 경험했습니다.peerDependencies
어떤 것이든 확실하게 해야만 했어요.peerDependencies
또한 다음과 같이 나열되었습니다.devDependencies
이 프로젝트는 글로벌하게 설치된 패키지를 자동으로 사용하지 않습니다.
프로젝트가 피어를 검색하여 설치합니다.
현재v1.0.1
그것은 답장을 쓰는 것을 지원하지 않습니다.package.json
자동적으로, 이것은 본질적으로 여기서 우리의 필요를 해결할 것입니다.
항공편 내 문제에 지원을 추가하십시오. https://github.com/spatie/npm-install-peers/issues/4
저도 같은 문제에 직면하고 있었습니다. 운 좋게도 설치 명령어와 함께 피어 종속성을 설치할 수 있는 다른 방법을 찾았습니다.
1단계:$ npm i npm-install-peers -D
플러그인에 대한 자세한 내용은 https://www.npmjs.com/package/npm-install-peers 을 참조하십시오.
2단계: 업데이트package.json
의 대본을 .
....
"scripts": {
...
"postinstall": "npm-install-peers"
},
....
3단계: 설치 명령을 눌러 모든 플러그인을 설치합니다.
$ npm install
실을 설치한 다음 실행:
yarn global add install-peerdeps
언급URL : https://stackoverflow.com/questions/35207380/how-to-install-npm-peer-dependencies-automatically
'it-source' 카테고리의 다른 글
메서드 public abstract java.util에 대한 쿼리의 유효성을 검사하지 못했습니다.목록. (0) | 2023.06.25 |
---|---|
SQL 서버 저장 프로시저를 버전 제어하는 가장 좋은 방법은 무엇입니까? (0) | 2023.06.25 |
오라클 호출 저장 프로시저 내부 선택 (0) | 2023.06.25 |
C# csv를 xls로 변환(기존 csv 파일 사용) (0) | 2023.06.25 |
기본 웹 브라우저에서 URL 열기 (0) | 2023.06.25 |