오류관리

[NPM] PEER DEPENDENCY? RC5?

k9e4h 2016. 8. 17. 18:16

아마 첫?오류 상황


Couldn't read dependencies



프록시문제? 해결방법제시1 / 해결방법제시2


peerdependency 추가안되서 생긴 문제? 해결방법제시3


script에 start안써서 생긴 문제? 해결방법제시4


해결방법제시1~4 모두 실패.





해결방법제시5

try deleting the node_modules directory and all npm temporary files and directories, and then run npm install again.


해결방법제시5도 실패


안되................... 누가좀알려주세요.....................


버전충돌이라는 이야기도 있고 프록시 문제라는 이야기도 있고 소스상의 문제라는 이야기도 있고

아직 원인규명 못함.





npm ERR! fetch failed https://registry.npmjs.org/karma-mocha-reporter/-/karma-mocha-reporter-2.1.0.tgz


해결방법제시6


이렇게 해보라길래 해봤지만 이렇게됨..



UNMET PEER DEPENDENCY @angular/core@2.0.0-rc.4

UNMET PEER DEPENDENCY @angular/http@2.0.0-rc.4


UNMET PEER DEPENDENCY에 대해 찾아보니


 NPM Version 3 에서 변경 된 것  https://blog.outsider.ne.kr/1230


이게 오류 원인으로 가장 타당해보인다.


npm version3에서는 version2와 다르게 peerDependencies를 자동으로 설치해 주지 않는다.


가 오늘의 키포인트.




2016.08.18 오전11시 1차 오류 정리


오류


Uncaught TypeError: core_1.NgModule is not a function ng2-translate.ts:32


오류 상황


git에서 하나의 프로젝트를 2번 clone하고 두 프로젝트에서 npm install


개발 환경 : node v4.4.4 / npm v3.10.3


오류 원인


peerDependencies가 꼬였다.

peerDependencies란 내가 사용하는 라이브러리들이 사용하는 라이브러리.........라는 느낌..?


ng2-translate.ts에서 필요한 @angular/core @angular/http 가 제대로 설치 되지 않았다.




오류 원인 파악 후


첫번째 도전(실패)    peerDependency를 clean해주는 package 사용


패키지 설치 명령 : npm install peer-dependency-cleaner

패키지 사용 명령 : cleanpeerdeps ng_modules


했더니 typescript 에러발생 흠................................................다른 방법을 찾자

TypeError: Cannot read property 'split' of undefined


두번째 도전(실패)    제대로 설치 안된 package 직접 설치


시도 명령 : npm install @angular/core


세번째 도전(실패)    경로 직접 찾아가서 모두 삭제 후 다시 처음부터


global 경로

C:\Users\eunhye.kim\AppData\Roaming\npm\node_modules


네번째 도전(실패)    문제가 생기는 ng2-translate를 직접 설치하자.


시도 명령 : npm i https://github.com/ocombe/ng2-translate/

시도 명령 : npm install ng2-translate --save


다섯번째 도전(실패)    npm cache 모두 지우고 npm install


npm cache를 모두 지우니 npm 2.15.1 로 내려갔다. (나중에 다시 cache를 지웠을때는 버전 3.10.3 그대로였음)


하지만 이번엔 npm install 제대로 시작도 못하고 실패

The package @angular/core@2.0.0-rc.4 does not satisfy its siblings' peerDependencies requirements!


버전 다시 원상복구


여섯번째 도전(실패)    run configration 삭제 후 다시 처음부터


npm 설치하다보니 lodash에서 fetch failed.

 lodash  underscore.js 대신 사용하는 javascript library (jQuery 다음으로 많이 사용하는 듯함)


시도 명령 : install i https://registry.npmjs.org/lodash.istypedarray/-/lodash.istypedarray-3.0.6.tgz

로 lodash 직접 설치하고 다시 npm install


npm install 은 오류 없이 잘 넘어감


webpack 설치하고 configration 하고 실행하니 다시 처음 문제로 돌아감.....


npm start 하다 보니 build는 완료되었는데 export된 ModuleWithProviders가 없다고 중간 쯤에 에러. 


ModuleWithProviders에 대해 보니 안정성이 실험적이라니......?ㅎ 이거 때문인가?


일곱번째 도전(실패)    package.json을 바꿔보자.



이걸 보니 ng2-translate의 peer dependency인 위의 두가지가 rc.5를 가져야하나보다.

내 package.json에는 rc.4로 되어있다. 관련된 것 하나씩 rc.5로 바꾸며 직접 npm i를 실행.


오! run 까지 완료.

그러나 web에서 새로운 에러가 생겼다.


bootstrap: Swap coreBootstrap() and coreLoadAndBootstrap()


coreLoadAndBootstrap으로 구글링해보니 왠일?? 8월9일에 rc5로 업데이트됨


http://happygrammer.tistory.com/130

https://angular.io/docs/ts/latest/cookbook/rc4-to-rc5.html


하..




2018.08.18일 오후4시


오류 해결 


package.json에


"ng2-translate": "^2.2.0"


로 되어있었다.


업데이트 되면서 새로운게 내가 쓰는 angular와 맞지 않아서 생긴 문제


일단 급한대로

"ng2-translate": "2.2.0"

로 사용하고

rc5 update는 담당자분께서 확인해 주신다고 하셨다.




[참고]  dependencies 속성


*                 해당 모듈의 어떠한 버전을 설치해도 무방함 ( npm install 명령어를 입력했을 때 최신 버전 설치 됨)

>1.0.0         1.0.0 버전보다 높은 버전이 설치 됨

^1.0.0         해당 버전과 호환되는 버전이 설치 됨( 1.0.0 이상, 2.0.0 미만의 버전 중에서 최신 버전이 설치 됨 )


>=, <,<,= 생략함


rc (release candidate) 다음 릴리즈 후보를 말하는 듯하다.


맨날보던 angular 튜토리얼 페이지 좀 더 자세히 볼걸

rc에 대해서 한번 찾아볼걸

ng2-translate가 문제면 그걸 변경해 볼걸



반응형