programing

nvm은 npm 구성 "vmdk" 옵션과 호환되지 않습니다.

newsource 2023. 5. 20. 10:50

nvm은 npm 구성 "vmdk" 옵션과 호환되지 않습니다.

노드로 다른 .JS 버전을 실행하려고 합니다.nvm그러나 다음 오류가 발생합니다.

$ 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.

일부러 접두사를 설정하여 사용하지 않도록 합니다.sudo npm(https://docs.npmjs.com/getting-started/fixing-npm-permissions) 참조).

제가 사용할 수 있는 방법이 있습니까?nvm전 세계에 설치된 패키지에 대한 접두사를 잃지 않고도?

접두사 삭제 및 재설정

$ npm config delete prefix 
$ npm config set prefix $NVM_DIR/versions/node/v6.11.1

참고: 오류 메시지에 표시된 버전 번호로 버전 번호를 변경합니다.

nvm이 npm 구성 "prefix" 옵션과 호환되지 않습니다. 현재 "/usr/local"로 설정되어 있습니다. "npm config delete prefix" 또는 "nvm use --delete-prefix v6.11.1 --silent"를 실행하여 설정을 해제하십시오.


Github의 @gabfioocchi에 대한 크레딧 - "nvm 접두사를 덮어써야 합니다."

나도 같은 문제를 가지고 있었고 실행했습니다.npm config delete prefix도움이 되지 않았습니다.

하지만 이는 다음과 같습니다.

brew를한 후 brew를 합니다.~/.nvm디렉터리:
$ mkdir ~/.nvm

다행 추다니합가을에 다음 합니다.~/.bash_profile:

export NVM_DIR=~/.nvm
. $(brew --prefix nvm)/nvm.sh

nvm 합니다("nvm 관이확인니다합지").~/.bashrc또는~/.profile또는~/.bash_profile)

새 터미널을 열면 경고 메시지가 출력되지 않습니다.
nvm 파일을 합니다.nvm --version지휘권
다음 JS를 사용하여 Node를 설치/재설치합니다.nvm install node && nvm alias default node.

추가 정보

는 습했니다를 설치했습니다.nvm용사를 homebrew그리고 그 후에 저는 다음과 같은 알림을 받았습니다.

업스트림에서 Homebrew를 통해 nvm을 명시적으로 관리하도록 요청했으므로 보고하기 전에 표준 nvm 설치 방법에 대해 문제가 있는지 확인해야 합니다.

NVM의 작업 디렉터리가 없는 경우 다음을 생성해야 합니다.

 mkdir ~/.nvm

을 항음목에 합니다.~/.bash_profile또는 원하는 셸 구성 파일:

 export NVM_DIR=~/.nvm
 . $(brew --prefix nvm)/nvm.sh

설정할 수 있습니다.$NVM_DIR모든 위치로, 그러나 변경되지 않은 채로 두었습니다./usr/local/Cellar/nvm/0.31.0업그레이드/재설치 시 nvm이 설치된 노드 설치가 모두 삭제됩니다.

이를 무시하면 다음과 같은 오류 메시지가 나타납니다.

nvm는 와지않다니와 .npm config "filename"으로 됨: "현""/usr/local/Cellar/nvm/0.31.0/versions/node/v5.7.1"
려달을 합니다.nvm use --delete-prefix v5.7.1 --silent그것을 해제하기 위해.

는 이전 .homebrew/nvm그후 NodeJS를 설치해야 것을 알게 그 후 노드JS를 다시 설치해야 한다는 것을 알게 되었습니다.그래서 저는 했습니다:

nvm install node && nvm alias default node

그리고 그것은 고쳐졌습니다.

업데이트: Brew를 사용하여 NVM을 설치하면 터미널이 느리게 시작됩니다.지침에 따라 문제를 해결할 수 있습니다.

이는 노드의 로컬 설치와 충돌할 수 있습니다(예전에 NVM이 아닌 다른 방법으로 설치한 경우).이 노드 인스턴스를 삭제해야 합니다.

  1. node_interval node_interval 파일 sudo rm -rf /usr/local/lib/node_modules
  2. 드 제거 거 sudo rm /usr/local/bin/node
  3. link 드크제 cd /usr/local/bin && ls -l | grep "../lib/node_modules/" | awk '{print $9}'| xargs rm

nvm을 설치할 수 없는 경우

이 오류는 NVM 설치 폴더 경로에 심볼릭 링크가 있을 때 발생할 수 있습니다.

설명.

는 다음과 NVM 기 경 같 습 니 다 다$HOME/.nvm하지만 당신의 홈 폴더는 제 경우처럼 다른 드라이브의 상징적인 링크가 될 수 있습니다.

예를 들어, 내 홈 폴더는 다른 드라이브에 대한 심볼릭 링크입니다.

/home/myuser -> /bigdrive/myuser

이로 인해 접두사 문제가 발생합니다.

해결책

시작 스크립트(.bashrc 또는 .zshrc 또는 기타)에서 NVM 폴더를 직접 경로로 변경합니다.

예:NVM_DIR="/bigdrive/myuser/.nvm".

.tvrc

export NVM_DIR="/bigdrive/myuser/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"

를 통해 설치된 노드를 사용하는 동안 이 문제를 발견했습니다.nvm,와 함께nvm홈브루를 통해 설치됩니다.뛰어서 해결했습니다.brew uninstall nvm,rm -rf $NVM_DIR그런 다음 공식 설치 스크립트를 사용하여 nvm을 다시 설치하고 필요한 노드 버전을 다시 설치합니다.

참고: 저도 가지고 있었습니다.$NVM_DIR마운트 및 심볼릭 링크.저는 그것을 제 홈디어로 다시 옮겼습니다.

홈 디렉토리를 어딘가에 마운트한 경우 due nvm이 심볼 링크에서 제대로 작동하지 않을 수 있습니다.$NVM_DIR이 어디에 있든 상관 없기 때문에 이를 실행하면 모든 것이 정상적으로 작동합니다.

$ mv ~/.nvm /tmp/
$ export NVM_DIR="/tmp/.nvm"
$ nvm use --delete-prefix v6.9.1

여기에 이미지 설명 입력저도 같은 문제가 있었는데 단말기가 나올 때마다 정말 짜증이 났습니다.터미널에 명령어를 실행했더니 수정되었습니다.

양조에서 nvm을 제거하려고 시도하는 경우

제거 nvm을 양조하는 것만으로는 충분하지 않을 수 있습니다.

npm 접두사가 여전히 /usr/local인 경우 이 명령을 실행합니다.

sudm -rf /usr/local/{lib/node{///npm,_node}, bin, share/man}/{npm*, 노드*, man1/node*}

나는 같은 에러 메시지를 가지고 있지만 다른 해결책이 있습니다.컬 중 자동 생성된 경로(install.sh )가 일치하지 않습니다.다음 항목에서 확인:

echo $NVM_DIR

내경우:/var/www//.nvm한 후합니다. ).

교체하다

export NVM_DIR="$HOME/.nvm"

(예:)와 함께

export NVM_DIR="$HOME.nvm"

이 문제를 해결하기 위한 명령은 두 가지뿐입니다.일부 사용자는 터미널을 여는 즉시 오류가 발생할 수도 있습니다.그들이 가장 먼저 보는 것은 다음과 같은 오류입니다.

nvm is not compatible with the npm config "prefix" option: 
currently set to "/Users/z/.npm-global"

려달을 합니다.npm config delete prefix또는nvm use --delete-prefix v4.2.4그것을 해제하기 위해.

이 문제를 해결하려면 다음 두 가지 명령을 실행합니다.참고: 버전 번호를 오류에 표시된 것과 동일하게 변경합니다.

$ npm config delete prefix 
$ npm config set prefix $NVM_DIR/versions/node/v6.11.1

참고: 단말기가 zsh를 사용하는 경우에도 작동합니다.

이 문제는 VSCode 및 JetBrain Terminal에 표시될 때 해결했지만 기본 터미널에서는 다음 명령을 사용하여 해결하지 못했습니다.

ls -la /usr/local/bin | grep "np[mx]"

이렇게 하면 끝에 해결된 경로가 제공됩니다.

... npm -> ../lib/node_modules/npm/bin/npm-cli.js
... npx -> ../lib/node_modules/npm/bin/npx-cli.js

여기서 파일을 제거하고 VS Code를 다시 실행하면 다음과 같은 문제가 해결됩니다.

rm -R /usr/local/bin/npm /usr/local/lib/node_modules/npm/bin/npm-cli.js
rm -R /usr/local/bin/npx /usr/local/lib/node_modules/npm/bin/npx-cli.js

수정 링크: https://github.com/nvm-sh/nvm/issues/1690#issuecomment-392014774

저는 이 스레드에서 모든 답을 시도했지만 아무 것도 작동하지 않았습니다.재설치 중nvmhttps://github.com/nvm-sh/nvm 에서 문서화된 대로curl제 문제를 해결했습니다.

저는 https://stackoverflow.com/a/47861348/2391795 답변을 팔로우했지만 잘 되지 않았습니다.

$ npm config delete prefix 
$ npm config set prefix $NVM_DIR/versions/node/v6.11.1

권장된 명령을 실행한 후 nvm이 더 이상 작동하지 않고 실행됨nvm use사용 중인 올바른 노드 버전을 표시하지만 실행 중입니다.node -v다른 것을 보여줄 것입니다.노드의 버전을 더 이상 변경할 수 없습니다.

나는 nvm을 완전히 제거했다가 다시 설치하여 수정했습니다.저는 https://github.com/creationix/nvm#manual-uninstall 을 실행하여 팔로우했습니다.

$ rm -rf "$NVM_DIR"

나서 제 ▁my나를 편집했습니다..zshrc입니다. 제 에는 vm 련 제 기 경 나 우 는 위 의 해 하 거 과 라 된 인 을 경 는

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"

그런 다음 새 셸을 시작하고(이 새 셸에 nvm이 로드되지 않도록) https://github.com/creationix/nvm#install-script 을 실행했습니다.

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.34.0/install.sh | bash

에 제가 제 했습니다..zshrc.

그 후 예전처럼 nvm을 사용할 수 있게 되었습니다.일이 잘못되어 모든 것을 다시 설치하도록 강요했다면 이상한 경우라고 생각합니다. 대부분의 사람들이 이 문제로 인해 이런 일을 겪는 것 같지는 않습니다.

제 상황을 설명하겠습니다.

먼저 현재 구성을 확인합니다.

$ nvm use --delete-prefix v10.7.0
$ npm config list

그런 다음 출력에서 오류 구성을 발견했습니다.

; project config /mnt/c/Users/paul/.npmrc
prefix = "/mnt/c/Users/paul/C:\\Program Files\\nodejs"

그래서 삭제했습니다.C:\\Program Files\\nodejsUsers.in /mnt/c/Users/paul/.npmrc.

홈브루를 통해 노드를 처음 설치한 다음 nvm을 시스템에 추가한 사용자를 위한 것입니다.

노이즈가 많은 메시지가 표시되는 경우:nvm is not compatible with the npm config "prefix" option: currently set to "/usr/local자체를 해야 할 . 에 대해서는 위에서 node_node 노드를 삭제합니다. 솔루션은 ^^ 위에서 완벽하게 설명되었지만 아래는 간단한 방법입니다.

brew가 .bash_profile에 환경 변수를 자동으로 추가했기 때문에 bash가 로드된 경로는 매번 원래 설치된 버전을 가리킵니다.

1. ./.bash_profile 2로 이동합니다.#export PATH="/usr/local/opt/node@10/bin:$PATH"와 같이 노드를 가리키는 라인에 대한 코멘트.

다음 번에 bash에서 nvm으로 설치된 노드를 로드해야 하는 경우 bash_profile에 nvmdir 내보내기 NVM_DIR="/Users/{your_user_name}/.nvm이 포함되어 있는지 확인하십시오.

(해결책을 찾기 전에) 이 질문을 찾은 nvm 접두사 문제에 대한 해결책을 찾고 있었습니다.여기 제 쉘 "대화상자"가 있습니다.누군가에게 유용할 수 있기를 바랍니다.는 이 게시물의 도움으로 접두사를 설정할 수 있었습니다: https://github.com/npm/npm/issues/6592

내가 노력했을때npm config delete prefix또는nvm use --delete-prefix사하기전에를 사용하기 npm --prefix="" set prefix ""는 오직: ERR! code 0을: npm ERR! ok 0을 받았습니다.

모든 노드 버전에서 동일한 절차를 반복해야 합니다. 이 접두사는 설치 후 다시 (내 경우) /usr/local로 설정됩니다.

    $ 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

Linux에서 홈 폴더를 새 드라이브로 이동한 후 이 문제가 발생했습니다..nvm 폴더를 제거하고 nvm을 다시 설치하여 수정되었습니다.

방금 문제를 해결했습니다.링크했습니다.$HOME/.nvm$DEV_ZONE/env/node/nvm디렉토리입니다.저도 같은 문제에 직면해 있었습니다.교체했습니다NVM_DIR$HOME/.zshrc과 같이

export NVM_DIR="$DEV_ZONE/env/node/nvm"

BTW를 사용하여 하십시오.curl또는wget를 하지 않는 brew자세한 내용은 Github: 855#이슈 코멘트-14611534에서 이번 호의 코멘트를 확인하시기 바랍니다.

그냥 생각이 있어요.기호 링크를 사용하여 오류를 해결하고 전역에 설치된 패키지에 대해 접두사를 사용할 수 있습니다. ln -s [your prefix path] [path in the '~/.nvm'] 그러면 당신은 상징적인 폴더를 갖게 될 것입니다.~/.nvm글로벌 패키지가 [사용자의 접두사 경로]에 여전히 설치되어 있습니다.가 다시 그면오다표지않고사수있다용습니할되시러시류가다▁use▁will▁then있니▁can습▁error▁you수▁again▁the▁and그를 사용할 수 있습니다.nvm use ** 보통. ps: 그은나효있습다니과가에에서 작동했습니다.mac를 설정하는 것을 마십시오.$PATH의 npm 신당의 npm게bin전역적으로 설치된 패키지를 사용할 폴더입니다.

나를 위해 나는 선을 지웠습니다.

NPM_PACKAGES="${HOME}/.npm-packages"

PATH="$NPM_PACKAGES/bin:$PATH"

의 게서에서..bashrc그리고 달릴 수 있었습니다.npm install -g package-name을 로 하지 않고sudo사용 권한 또는 오류 메시지가 내 셸 창에 나타납니다.

노드와 nodejs의 npm이 충돌하기 때문에 동일한 문제에 직면했습니다.

따라서 아래 명령을 사용하여 nodejs를 제거합니다.

sudo apt-get remove nodejs

모든 nodejs 관련 패키지를 제거합니다.

위의 명령 이후에, 당신은 그것과 똑같이 자동 제거 명령을 실행해야 합니다.

sudo apt autoremove

이것이 문제를 해결할 것입니다.

이것이 제가 저를 위해 하고 일한 것입니다.

1-스두수

2-root@antonio:/home/antonio# mv ~/.nvm /tmp/

3-root@antonio:/home/antonio# export NVM_DIR="/tmp/.nvm"

4-root@antonio:/home/antonio# nvm use --delete-prefix v17.4.0

5- 'root@properties:/home/properties# 노드 -v

여기에 이미지 설명 입력`

sh 파일을 팔로우하는 것이 제 사건에 도움이 되었습니다.

# nvmish.sh
unset npm_config_prefix
source $HOME/.nvm/nvm.sh
nvm use 18

참조:
을 제거하려면 -하십시오.$NVM_DIR으로 폴일으로(더적반일))~/.nvm)
시도할 수 있습니다.
rm -rf ~/.nvm

언급URL : https://stackoverflow.com/questions/34718528/nvm-is-not-compatible-with-the-npm-config-prefix-option