새 노드 버전을 설치하고 npm 패키지를 이동합니다. 대답: 노드의 기본 전역 설치 디렉터리를 변경합니다.Windows의 js 모듈?

7074 단어 nvmnodenpmbeginners
그래서 나는 최근에 새로운 노드 버전을 설치해야 했다. 왜냐하면 우리는 그것을 업그레이드했기 때문이다.적어도 나는 이것이 원인이라고 생각한다. 나는 명령행의 지시에 따를 뿐이다.
나는 내가 이미 nvm 이나 노드 버전 관리자를 사용하고 있다는 것을 안다.그것은 내가 사용하는 루비 버전 관리자 rbenv 과 유사하게 잘 작동한다.nvm의 자술을 보면 내가 해야 할 일은 다음과 같다.
  • 내가 필요로 하는 노드 버전 찾기
  • 설치 명령 실행
  • 그래서 나는 Node가 home page에서 사용할 수 있는 버전을 보았고 최신 LTS(장기 지원) 버전인 10.16.0을 선택했다.나는 당시에 최신 12.8.1 버전을 선택할 수 있었지만, 나는 8.11.3 버전을 실행했기 때문에 두 개의 주요 버전만 업그레이드하는 것이 안전하다고 생각했다.근데 그게 그렇게 중요하지 않을 수도 있어.
    그런 다음 install 명령을 실행합니다.
    nvm install 10.16.0
    
    # I would put the output but I installed this like 3 weeks ago :(
    
    ...완성했어, 대단해!아무런 문제도 없는 것 같고, 다른 할 일도 없는 것 같다.
    로컬 dev.to repo에서 yarn을 실행했지만 실패했습니다.
    :yarn
    yarn install v1.16.0
    
    # [1/4] 🔍  Resolving packages...
    # [2/4] 🚚  Fetching packages...
    # error [email protected]: The engine "node" is incompatible with this module.
    # Expected version "^8.12.0 || >=9.7.0". Got "8.11.3"
    # error Found incompatible module.
    # Visit https://yarnpkg.com/en/docs/cli/install
    # for documentation about this command.
    
    응, 내 생각에 나는 여전히 구버전인 것 같아.nvm의 자술 파일을 다시 읽으려면 설치된 새 노드 버전을 사용해야 합니다.
    nvm use 10.16.0
    # Now using node v10.16.0 (npm v6.9.0)
    
    좋아, 다행이야!이것은 마치 효과가 있는 것 같다.나는 yarn을 뛰었다. 그것은 성공했다.
    어느 주말로 접어들면서 저는 게이츠비 측의 프로젝트에 종사하고 있습니다. 개발 서버를 시작하려고 합니다.
    gatsby dev
    #-bash: gatsby: command not found
    
    응, 내 생각에 이것은 나의 새 노드 버전과 관련이 있을 것 같아.이전 버전의 패키지를 다시 설치하는 명령을 찾았습니다.
    nvm reinstall-packages 8.11.3
    # Reinstalling global packages from v8.11.3...
    # No installed global packages found...
    # Linking global packages from v8.11.3...
    # No linked global packages found...
    
    이상해, 왜 이러는지 모르겠어.어떤 버전을 설치했는지 살펴보겠습니다.
    nvm list
    #         v8.11.3
    # ->     v10.16.0
    #          system
    # default -> node (-> v10.16.0)
    # node -> stable (-> v10.16.0) (default)
    # stable -> 10.16 (-> v10.16.0) (default)
    # iojs -> N/A (default)
    # lts/* -> lts/dubnium (-> v10.16.0)
    # lts/argon -> v4.9.1 (-> N/A)
    # lts/boron -> v6.17.1 (-> N/A)
    # lts/carbon -> v8.16.0 (-> N/A)
    # lts/dubnium -> v10.16.0
    
    오, 응, 내 패키지가 8.11.3이 아닌 시스템 버전에서 설치되었는지 알고 싶어.재설치 명령이 다시 실행되었지만 시스템은 제외됩니다.
    nvm reinstall-packages system
    # some successful output
    
    너무 좋아요.다시 한 번 gatsby develop을 시도해 보겠습니다.아니오, 효과가 없어요.여전히 command not found을 획득했습니다.응, 나는 두 가지 선택이 있어. 글로벌 패키지를 사용할 때마다 글로벌 패키지가 설치된 버전을 사용하든지, 문제를 해결하든지.
    사실 세 번째 선택도 있다. 첫 번째 선택을 하고 4주 동안 싫증이 나서 마침내 문제점을 찾아냈다.게으른 사람으로서 나는 이렇게 했다. 나는 여기서 이 글을 썼다.
    응, 어쨌든, 나는 보편적인 느낌을 가지고 있다. 이것은 일부 npmnvm의 링크가 정확하지 않기 때문이다.gatsby develop을 실행하면 실패하고 command not found으로 돌아갑니다.
    which npm
    # /Users/andyzhao/.nvm/versions/node/v8.11.3/bin/npm
    
    응, 내가 처음으로 그것을 복구하려고 시도했을 때, 나는 수색하는 데 많은 시간을 들였지만, 모두 소용이 없었다.이번에 나는 창고 넘침에서 나를 도와줄 답을 찾았다.

    응답: 노드의 기본 글로벌 설치 디렉터리를 변경합니다.Windows의 js 모듈?


    2014년 5월 10일
    71

    전역 패키지를 C:\Program Files (x86)\nodejs\에 설치하려고 했는데 관리자 신분에 문제가 생겼습니다.C:\Program Files (x86)\nodejs\node_modules\이 문제를 해결하려면 글로벌 설치 디렉토리를 C:\Users\{username}\AppData\Roaming\npm으로 변경하십시오.C:\Users\{username}\에서 다음 내용을 포함하는 .npmrc 파일을 만듭니다.prefix = "C:\\Users\\{username}\\AppData\\Roaming\\npm"참고
  • npm install -g
  • Open Full Answer
    구체적으로 npm config ls -l 명령은 나에게 필요한 단서를 주었다.
    npm config ls -l
    # ; cli configs
    # long = true
    # metrics-registry = "https://registry.npmjs.org/"
    # scope = ""
    # user-agent = "npm/6.9.0 node/v10.16.0 darwin x64"
    # 
    # ; userconfig /Users/andyzhao/.npmrc
    # prefix = "/Users/andyzhao/.nvm/versions/node/v8.11.3"
    # ...whole lots of other stuff
    # globalconfig = "/Users/andyzhao/.nvm/versions/node/v8.11.3/etc/npmrc"
    # ...etc.
    
    따라서 나의 globalconfig은 현재 버전의 v10.16.0이 아닌 노드 v8.11.3으로 설정되었다.접두사도 8.11.3인 것을 보고 userconfig 파일 .npmrc을 열어 변경할 수 있는 것이 있는지 확인하기로 했습니다.
    # .npmrc
    
    prefix=/Users/andyzhao/.nvm/versions/node/v8.11.3
    
    아하!틀림없이 이렇다!정당하다나는 모르겠지만, 한번 해 볼 만하다.v10.16.0으로 업데이트하여 터미널을 다시 시작하고 nvm reinstall-packages system을 실행합니다.npm은 모든 내용을 계속 실행하고 설치합니다. gatsby-cli이 설치된 것을 보았습니다.터미널을 다시 시작하여 gatsby develop을 실행합니다.성공
    아이고, 정말 여행이야!이 문제를 해결하는 데는 틀림없이 내가 생각한 것보다 더 긴 시간이 걸릴 것이다. 그러나 나는 내가 성공적으로 해냈으니 매우 기쁘다.어떤 일을 하기 전에 3주 동안 버전을 반복해서 바꾸는 것은 사실이지만, 나는 한 문제에서 좀 쉬고 다시 살펴보는 것이 항상 도움이 된다고 생각한다.nvmnpm의 설치 문제를 해결해야 할 다른 사람이 없기를 바랍니다.✌️

    좋은 웹페이지 즐겨찾기