Ich installiere Node mit Homebrew auf einer sauberen macOS Mojave-Box. Ich versuche, das npm-Installationsverzeichnis in einem benutzereigenen Verzeichnis einzurichten; das Verzeichnis tools
existiert bereits und gehört dem Benutzer:
npm config set prefix '/Users/giorgio/tools/npm_global'
Und das schlägt mit dieser Meldung fehl. Weiß jemand, was los ist?
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)
Antwort1
Habe ganz zufällig eine Lösung gefunden. Scheint, als hätte ich beim ersten Versuch set prefix
eine falsche Pfadangabe verwendet. Ich musste die .npmrc
Datei manuell entfernen und den set prefix
Befehl erneut versuchen, damit es funktioniert.
Ich hätte wirklich erwartet, set prefix
dass es möglich wäre, die von ihm selbst erstellten NPN-Konfigurationsdateien zu ändern.