이것은 package.json
부모 프로젝트에 포함시키는 모듈에 대한 것입니다.
{
"version": "0.0.1",
"name": "module-name",
"dependencies": {
"express": "3.3.4",
"grunt": "0.4.1",
"grunt-contrib-compass": "0.4.0",
"grunt-contrib-copy": "0.4.1",
"grunt-contrib-cssmin": "0.4.1",
"grunt-contrib-jshint": "0.6.3",
"grunt-contrib-requirejs": "0.4.1",
"grunt-contrib-uglify": "0.2.2",
"grunt-contrib-watch": "0.5.1",
"grunt-express-server": "0.4.1",
"grunt-karma": "0.4.5",
"grunt-regex-replace": "0.2.5",
"request": "2.25.0"
},
"scripts": {
"postinstall": "grunt install"
}
}
주목해야 할 것은이 모듈은 개인 저장소에 포함되어 있으며 다음 package.json
과 같이 부모에 포함시킵니다 ."module-name": "git+ssh://git@myserver:user/module-name.git"
답변
꽤 오랫동안 존재했지만 아직 해결 방법이없는 버그가 발생한 것 같습니다. 이 경우 npm 저장소에 공개 된 몇 가지 문제가 있습니다.
- npm 설치는 의존성을 반복적으로 확인 / 설치해야합니다 https://github.com/npm/npm/issues/1341 (닫힘)
- 로컬 개인 모듈 종속성 https://github.com/npm/npm/issues/2442 (닫힘)
첫 번째 사람들은 시도 할 수있는 몇 가지 해결 방법을 나열합니다.
의존성을 첫 번째 수준의 종속 자로 명시 적으로 나열하는 대안 솔루션이 있습니다 (약간의 해킹). 이를 위해서는 목록을 유지해야하지만 실제로는 매우 드물게 수행해야합니다.
답변
전체 node_modules
폴더를 제거 하고 다시 설치 하면 매우 비슷한 문제가 발생 했습니다. IT 크라우드 쇼 에서이 요령을 배웠습니다 !
rm -rf node_modules
npm install
답변
Windows 컴퓨터를 사용하고 있습니다.
- node_modules 폴더를 삭제했습니다.
- 어떻게 든 package.lock.json 파일이 생성되고 있습니다. 그 파일을 삭제했습니다.
- 그런 다음 npm을 설치하십시오.
- 깨끗한 빌드.
- 운영.
답변
이 코드를 상속 한 경우 종속성 및 버전이 잠겨 있고 ./npm-shrinkwrap.json 파일이있을 수 있습니다.
해당 파일에 종속성이 나열되지 않으면 npm install
명령으로 설치되지 않습니다 .
패키지를 수동으로 설치 한 다음 실행 npm shrinkwrap
하여 shrinkwrap 파일을 업데이트해야합니다.
답변
package.json
파일이와 같은 디렉토리에 있지 않은 문제에 직면하고있는 것 같습니다 Gruntfile.js
. grunt xxx
명령 을 실행할 때 다음 과 같은 메시지가 표시됩니다.
Local Npm module "xxx" not found. Is it installed?
현재 해결책은 다음과 같습니다.
- Gruntfile.js와 동일한 디렉토리에 package.json을 작성하십시오.
- 그런트 프로젝트에 필요한 모듈 정의
npm install
로컬로로드하기 위해 실행- 이제 필요한 grunt 명령이 작동해야합니다.
IMHO, 우리는 부모 npm 모듈 (예 : 같은 프로젝트 내의 부모 디렉토리에있는 package.json)에서로드 된 grunt resolve 모듈을 가질 수 없다는 것은 슬픈 일입니다. 논의는 여기 가 피할로드 “글로벌”모듈로 이루어 졌음을 나타냅니다 것 같다하지만 우리가 원하는 것은로드 대신 “내 프로젝트”모듈에서 생각합니다.
답변
이전 버전의 노드에서는 OP가 true 일 수 있습니다. 그러나 노드 4.4.1에서도 마찬가지입니다.
사용중인 노드 버전과 잘 연결되어있을 수 있습니다. 최신 버전으로 업그레이드하십시오. 특정 종속성은 노드 버전과 호환되지 않는 경우 전 이적으로로드되지 않습니다.
나는 이것을 실행하여 이것을 발견했다 npm update
.
최신 버전으로 업그레이드 한 후 (4.4-> 5.9); 이 문제가 해결되었습니다.
답변
내 경우에는 node_modules
및 을 제거하는 데 도움이되었습니다 package-lock.json
.
그런 다음으로 모든 것을 다시 설치하십시오 npm install
.