최근에 Node v.6으로 전환했으며 일반 빌드 grunt / gulp / webpack을 실행하는 데 점점 더 많은 문제가 발생하기 시작했습니다.
예를 들면 다음과 같습니다.
$ gulp
[14:02:20] Local gulp not found in ~/_Other/angular-2-ts/angular2-seed
[14:02:20] Try running: npm install gulp
rm -rf node_modules
gulp 및 기타 모든 플러그인과 모듈은 / node_modules 폴더에 설치되어 있으며 심지어는이를 통해 다시 설치됩니다 .
이러한 오류의 대부분은 다음과 같은 줄을 가지고 있습니다.
(node:42) fs: re-evaluating native module sources is not supported.
If you are using the graceful-fs module,
please update it to a more recent version.
임의의 숫자로 42
그 문제와 마찬가지로 제출 한 angular2-seed repo https://github.com/mgechev/angular2-seed/issues/902
내가 시도한 것은 n ( https://www.npmjs.com/package/n )을 통해 Node v.5로 다운 그레이드하는 것입니다. 그런 다음 모든 node_modules
폴더를 제거한 다음 수행하십시오.
npm info graceful-fs -v
3.3.6
좋아, 업그레이드하거나 제거하고 새로 설치하십시오.
npm i graceful-fs@latest
npm i graceful-fs@4.1.4
sudo npm i graceful-fs@4.1.4 -g
모든 결과
npm info graceful-fs -v
3.3.6
그래서 지금은 graceful-fs 3.3.6에 붙어 있거나 일부 모듈 의존성에서는 더 나쁩니다.
$ angular2-seed
$ npm install
//other lines..
npm WARN deprecated graceful-fs@1.2.3: graceful-fs v3.0.0 and before
will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0
as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
여기서 전략은 무엇입니까?
- graceful-fs <4.0.0을 포함하는 모든 뎁을 수동으로 패치 하시겠습니까?
- 특정 패키지 버전을 사용하기위한 글로벌 스위치가 있습니까?
- 모든 것을 다시 설치 하시겠습니까?
답변
이 문제가 있었고 업데이트하여 문제를 해결할 수있었습니다 npm
sudo npm update -g npm
업데이트 전의 결과 npm info graceful-fs | grep 'version:'
는 다음과 같습니다.
version: '3.3.12'
업데이트 후 결과는 다음과 같습니다.
version: '3.9.3'
답변
입력 npm list graceful-fs
하면 graceful-fs의 어떤 버전이 현재 설치되어 있는지 확인할 수 있습니다.
제 경우에는 다음을 얻었습니다.
npm list graceful-fs
@request/promise-core@0.0.1 /projects/request/promise-core
+-- gulp@3.9.1
| `-- vinyl-fs@0.3.14
| +-- glob-watcher@0.0.6
| | `-- gaze@0.5.2
| | `-- globule@0.1.0
| | `-- glob@3.1.21
| | `-- graceful-fs@1.2.3 <==== !!!
| `-- graceful-fs@3.0.8
`-- publish-please@2.1.3
+-- nsp@2.4.0
| `-- nodesecurity-npm-utils@4.0.1
| `-- silent-npm-registry-client@2.0.0
| `-- npm-registry-client@7.1.0
| `-- graceful-fs@4.1.3
`-- read-pkg@1.1.0
`-- load-json-file@1.1.0
`-- graceful-fs@4.1.4
보시다시피 gulp
아주 오래된 버전에 달려 있습니다. 불행히도을 사용하여 직접 업데이트 할 수 없습니다 npm update graceful-fs
. gulp
의존성을 업데이트해야합니다. 따라서 이와 같은 경우에 운이 없습니다. 그러나 오래된 의존성, 즉 프로젝트에 대한 문제를 열 수 있습니다 gulp
.
답변
꿀꺽 꿀꺽 다시 설치 하여이 버그를 해결
npm uninstall gulp
npm install gulp
답변
node_modules 폴더 내용 삭제 및 실행
npm install bower
npm install
나를 위해 문제를 해결했습니다!
답변
여기 에 설명 된대로 명령을 시도 할 수도 있습니다.
npm cache clean
다른 단계가 결과를 완전히 얻지 못한 후 (모든 것을 업데이트하는 것 제외) 저를 위해 그것을 고쳤습니다.
답변
Cordova가 graceful-fs 종속성을 가진 자체 npm을 가져 오는 것을 지적하기 위해 Cordova를 사용하는 경우 Cordova가 최신인지 확인하여 최신 graceful-fs도 가져옵니다.
답변
나는 그것을 고칠 수 있었다 :
- 에 의해 업데이트
package.json
- node_modules 폴더 삭제
- 실행
npm install