node.js - vscode - nvm npm config delete prefix
nvm no es compatible con la opciĆ³n de "prefijo" de configuraciĆ³n de npm: (13)
Eliminar y restablecer el prefijo
$ npm config delete prefix
$ npm config set prefix $NVM_DIR/versions/node/v6.11.1
Nota: Cambie el número de versión con el indicado en el mensaje de error.
nvm no es compatible con la opción "prefijo" de configuración npm: actualmente está configurado como "/ usr / local" Ejecutar "prefijo de eliminación de configuración npm" o "uso nvm --delete-prefix v6.11.1 - silencioso" para desactivarlo.
Créditos a @gabfiocchi en Github - "Necesitas sobrescribir el prefijo nvm"
Estoy tratando de ejecutar otra versión de NodeJS con
nvm
pero obtengo este error:
$ nvm use v4.2.4
nvm is not compatible with the npm config "prefix" option:
currently set to "/Users/z/.npm-global"
Run `npm config delete prefix` or `nvm use --delete-prefix v4.2.4` to unset it.
Tengo mi prefijo establecido a propósito para evitar
sudo npm
(consulte
https://docs.npmjs.com/getting-started/fixing-npm-permissions
).
¿Hay alguna forma de usar
nvm
sin perder mi prefijo para los paquetes instalados globalmente?
Acabo de resolver el problema.
$HOME/.nvm
simbólico
$HOME/.nvm
al
$HOME/.nvm
$DEV_ZONE/env/node/nvm
.
Estaba enfrentando el mismo problema.
NVM_DIR
en
$HOME/.zshrc
siguiente manera
export NVM_DIR="$DEV_ZONE/env/node/nvm"
Por cierto, instale NVM usando el comando
curl
o
wget
no usando
brew
.
Para obtener más información, consulte el comentario en este número en Github:
855#issuecomment-146115434
Déjame describir mi situación.
Primero, verifique la configuración actual
$ nvm use --delete-prefix v10.7.0
$ npm config list
Entonces, encontré la configuración de error en la salida:
; project config /mnt/c/Users/paul/.npmrc
prefix = "/mnt/c/Users/paul/C://Program Files//nodejs"
Entonces, eliminé el
C://Program Files//nodejs
en /mnt/c/Users/paul/.npmrc.
Estaba buscando una solución para el problema de prefijo nvm y encontré esta pregunta (antes de encontrar la solución). Aquí está mi "diálogo" de shell. Espero que pueda ser útil para alguien. Pude configurar el prefijo con la ayuda de esta publicación: https://github.com/npm/npm/issues/6592
Cuando probé
npm config delete prefix
o
nvm use --delete-prefix
antes de usar
npm --prefix="" set prefix ""
, obtuve solo: npm ERR!
no está bien código 0
Tenga en cuenta que tendrá que repetir el mismo procedimiento con cada versión de nodo, el prefijo se vuelve a configurar (en mi caso) / usr / local después de la instalación.
$ nvm install 0.10
######################################################################## 100.0%
nvm is not compatible with the npm config "prefix" option: currently set to "/usr/local"
Run `npm config delete prefix` or `nvm use --delete-prefix v0.10.44` to unset it.
$ npm --prefix="" set prefix ""
$ nvm use 0.10.44
nvm is not compatible with the npm config "prefix" option: currently set to "/home/john"
Run `npm config delete prefix` or `nvm use --delete-prefix v0.10.44` to unset it.
$ nvm use --delete-prefix v0.10.44
Now using node v0.10.44 (npm v1.3.10)
$ nvm ls
v0.10.44
v4.4.3
-> system
default -> 4.4.3 (-> v4.4.3)
node -> stable (-> v4.4.3) (default)
stable -> 4.4 (-> v4.4.3) (default)
iojs -> N/A (default)
$ npm config get prefix
/usr/local
Esto puede ser un conflicto con su instalación local de Node (si la tenía instalada de otra manera que no sea NVM en el pasado). Debe eliminar esta instancia de nodo:
-
eliminar node_modules
sudo rm -rf /usr/local/lib/node_modules
-
eliminar nodo
sudo rm /usr/local/bin/node
-
eliminar enlace de nodo
cd /usr/local/bin && ls -l | grep "../lib/node_modules/" | awk ''{print $9}''| xargs rm
cd /usr/local/bin && ls -l | grep "../lib/node_modules/" | awk ''{print $9}''| xargs rm
Después de que no puedas instalar nvm
Me encontré con esto mientras usaba el nodo instalado a través de
nvm
, con
nvm
instalado a través de homebrew.
Lo resolví ejecutando
brew uninstall nvm
,
rm -rf $NVM_DIR
, luego reinstalando nvm usando el
script de instalación oficial
y reinstalando la versión de nodo que necesitaba.
Nota: También tenía
$NVM_DIR
montado y
$NVM_DIR
.
Lo volví a poner en mi hogar.
Nota:
para eliminar, eliminar o desinstalar nvm, simplemente elimine la carpeta
$NVM_DIR
(generalmente
~/.nvm
)
puedes probar :
rm -rf ~/.nvm
Puede ser el problema si tiene su directorio de inicio montado en algún lugar, debido a que nvm no funciona correctamente con enlaces simbólicos. Como no me importa dónde se encuentra mi $ NVM_DIR, ejecuto esto y todo funciona bien:
$ mv ~/.nvm /tmp/
$ export NVM_DIR="/tmp/.nvm"
$ nvm use --delete-prefix v6.9.1
Seguí la respuesta https://.com/a/47861348/2391795 pero no funcionó bien.
$ npm config delete prefix
$ npm config set prefix $NVM_DIR/versions/node/v6.11.1
Después de ejecutar los comandos recomendados, mi nvm ya no funcionaba, ejecutar
nvm use
mostraría la versión de nodo adecuada que se estaba utilizando, pero ejecutar
node -v
mostraría otra.
Ya no era posible cambiar la versión del nodo.
Desinstalé y reinstalé nvm por completo para solucionarlo. Seguí https://github.com/creationix/nvm#manual-uninstall ejecutando
$ rm -rf "$NVM_DIR"
Luego
.zshrc
mi
.zshrc
para eliminar las líneas relacionadas con nvm, que en mi caso eran
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && /. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && /. "$NVM_DIR/bash_completion"
Luego comenzó un nuevo shell (para que nvm no se cargue en este nuevo shell) y ejecutó https://github.com/creationix/nvm#install-script
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash
Lo cual agregó nvm las líneas que previamente había eliminado en mi
.zshrc
.
Entonces pude usar nvm como solía hacerlo. Supongo que es un caso extraño en el que las cosas salieron mal y me obligaron a reinstalar todo, no parece que la mayoría de las personas pasen por esto debido a este problema.
Solo tengo una idea.
Use el enlace simbólico para resolver el error y aún puede usar su prefijo para paquetes instalados globalmente.
ln -s [your prefix path] [path in the ''~/.nvm'']
entonces tendrá una carpeta simbólica en la carpeta
~/.nvm
, pero de hecho, sus paquetes globales todavía están instalados en [su ruta de prefijo] .
Entonces el error no volverá a aparecer y puede usar
nvm use **
normalmente.
PD: me ha funcionado en
mac
.
pps: no olvide establecer
$PATH
en su carpeta npm
bin
para usar los paquetes instalados globalmente.
Tuve el mismo problema y ejecutar
npm config delete prefix
no me ayudó.
Pero esto hizo:
Después de instalar nvm usando brew, cree el directorio
~/.nvm
:
$ mkdir ~/.nvm
y agregue las siguientes líneas en
~/.bash_profile
:
export NVM_DIR=~/.nvm
. $(brew --prefix nvm)/nvm.sh
(Compruebe que no tiene ningún otro comando relacionado con nvm en ningún
~/.bashrc
o
~/.profile
o
~/.bash_profile
)
Abra una nueva terminal y esta vez no debería imprimir ningún mensaje de advertencia.
Compruebe que nvm funciona ejecutando el comando
nvm --version
.
Después de eso, instale / reinstale NodeJS usando
nvm install node && nvm alias default node
.
Más información
Instalé
nvm
usando
homebrew
y luego recibí esta notificación:
Tenga en cuenta que upstream nos ha pedido que hagamos una gestión explícita de nvm a través de Homebrew que no es compatible con ellos y que debe verificar cualquier problema con el método de instalación estándar de nvm antes de informar.
Debe crear el directorio de trabajo de NVM si no existe:
mkdir ~/.nvm
Agregue lo siguiente a
~/.bash_profile
o al archivo de configuración de shell deseado:
export NVM_DIR=~/.nvm . $(brew --prefix nvm)/nvm.sh
Puede establecer
$NVM_DIR
en cualquier ubicación, pero dejarlo sin cambios desde/usr/local/Cellar/nvm/0.31.0
destruirá cualquier instalación de Nodo instalada en nvm al actualizar / reinstalar.
Ignorarlo me trajo a este mensaje de error:
nvm
no es compatible con lanpm config
"prefijo" denpm config
: actualmente configurado en"/usr/local/Cellar/nvm/0.31.0/versions/node/v5.7.1"
Ejecutenvm use --delete-prefix v5.7.1 --silent
para desarmarlo.
Seguí una guía anterior (de
homebrew/nvm
) y luego descubrí que necesitaba reinstalar NodeJS.
Así que lo hice:
nvm install node && nvm alias default node
y fue arreglado
Actualización: el uso de brew para instalar NVM provoca un inicio lento de la Terminal. Puede seguir estas instrucciones para resolverlo.
Tuve este problema después de mover mi carpeta de inicio a una nueva unidad en Linux. Se solucionó eliminando la carpeta .nvm y reinstalando nvm
Tuve el mismo problema y fue realmente molesto cada vez con el terminal. Ejecuté el comando en la terminal y se solucionó
Para aquellos que intenten eliminar nvm de brew
puede que no sea suficiente simplemente preparar desinstalar nvm
si ve que el prefijo npm sigue siendo / usr / local, ejecute este comando
sudo rm -rf /usr/local/{lib/node{,/.npm,_modules},bin,share/man}/{npm*,node*,man1/node*}