Homebrew를 사용하여 깨끗한 macOS Mojave 상자에 노드를 설치하고 있습니다. 사용자 소유 디렉토리에 npm 설치 디렉토리를 설정하려고 합니다. 해당 디렉토리는 tools
이미 존재하며 사용자가 소유하고 있습니다.
npm config set prefix '/Users/giorgio/tools/npm_global'
그리고 이 메시지와 함께 실패합니다. 무슨 일이 일어나고 있는지 아는 사람 있나요?
Error: EACCES: permission denied, mkdir '/tools'
TypeError: Cannot read property 'loaded' of undefined
at exit (/usr/local/lib/node_modules/npm/lib/utils/error-handler.js:98:27)
at errorHandler (/usr/local/lib/node_modules/npm/lib/utils/error-handler.js:216:3)
at /usr/local/lib/node_modules/npm/bin/npm-cli.js:78:20
at cb (/usr/local/lib/node_modules/npm/lib/npm.js:225:22)
at /usr/local/lib/node_modules/npm/lib/npm.js:263:24
at /usr/local/lib/node_modules/npm/lib/config/core.js:83:7
at Array.forEach (<anonymous>)
at /usr/local/lib/node_modules/npm/lib/config/core.js:82:13
at f (/usr/local/lib/node_modules/npm/node_modules/once/once.js:25:25)
at afterExtras (/usr/local/lib/node_modules/npm/lib/config/core.js:173:20)
/usr/local/lib/node_modules/npm/lib/utils/error-handler.js:98
var doExit = npm.config.loaded ? npm.config.get('_exit') : true
^
TypeError: Cannot read property 'loaded' of undefined
at exit (/usr/local/lib/node_modules/npm/lib/utils/error-handler.js:98:27)
at process.errorHandler (/usr/local/lib/node_modules/npm/lib/utils/error-handler.js:216:3)
at process.emit (events.js:197:13)
at process._fatalException (internal/process/execution.js:123:25)
답변1
아주 무작위로 해결책을 찾았습니다. 처음 시도했을 때 set prefix
잘못된 경로 문자열을 사용한 것 같습니다. 파일 을 수동으로 제거 .npmrc
하고 set prefix
명령을 다시 실행하여 작동하게 해야 했습니다.
set prefix
그래도 자체적으로 생성된 npn 구성 파일을 수정할 수 있을 것으로 기대했습니다 .