
cinst nodejs
좋습니다. 저는 NPM에 종속된 Chocolatey bin 디렉터리에 NodeJS를 설치하는 방법을 사용하여 NodeJS를 설치했습니다 .
그런 다음 NPM에 대한 종속성과 함께 기본 NodeJS 설치를 사용하여 내 ProgramFiles 디렉터리에 NodeJS를 설치하는 대신 NodeJS.Install을 설치하고 싶다는 것을 깨달았습니다.
내 질문:
이제 둘 다 설치되었습니다. node 또는 NPM 명령을 실행할 때 사용되는 것은 무엇이며 cuninst nodejs
작동하지 않는 경우 Chocolatey 저장소에서 NodeJS를 제거하려면 어떻게 해야 합니까?
답변1
설치된 nodejs 버전에는 npm이 설치되어 있으므로 필요하지 않습니다. 그러나 nodejs 패키지를 제거하는 것만으로는 충분하지 않습니다. 이는 *.install
또는 패키지를 가리키는 메타 패키지이기 때문입니다 *.commandline
.
다음을 수행하십시오.
- 최신 버전의 choco(0.9.9.x 시리즈)를 사용하고 있는지 확인하세요.
choco uninstall npm -dvyaf
choco uninstall nodejs.commandline -dvyaf
그러면 모든 버전의 npm이 제거되고 경로에 있는 bin 파일(shim 리디렉션)이 제거됩니다. 그런 다음 이식 가능한 nodejs 버전(nodejs.commandline)과 모든 버전이 제거됩니다. 이는 디렉터리를 완전히 정리하기 위한 강제 제거입니다.
이 작업 중 일부를 이미 수행한 경우 디렉터리로 이동하여 및 %ChocolateyInstall%\lib
로 시작하는 폴더를 제거하세요 .npm
nodejs.commandline
답변2
좋아, 그래서 몇 가지 실험을 해보았는데 NodeJS가 패키지 자체에 ChocolateyUninstall.ps1을 요구하기 때문에 작업이 완료되지 않은 것으로 나타났습니다. cuninst nodejs
현재 사용 가능한 많은 패키지에는 이 파일이 없습니다.
따라서 다음 명령을 실행하면:
초코리스트 -localonly
난 돌아가 겠어:
컬 7.28.1
...
...
nodejs.commandline 0.10.35
nodejs.install 0.10.35
npm 1.4.9
제가 제거하고 싶은 항목은 nodejs 0.10.35
이것이 Chocolatey bin 설치이기 때문입니다. 나는 다른 사람들을 지키고 싶다. 그래서 저는 패키지를 나열할 때 표시되는 이름을 사용합니다 nodejs 0.10.35
. 즉, 다음과 같습니다.
C:\Windows\System32> cuninst nodejs 0.10.35
이제 내가 실행할 때 :
초코리스트 -localonly
난 돌아가 겠어:
컬 7.28.1
...
...
nodejs 0.10.35
nodejs.commandline 0.10.35
nodejs.install 0.10.35
npm 1.4.9
이제 처음에 설정한 추가 버전이 사라졌습니다. NodeJS.Install을 두 번째로 설정할 때 이미 존재했던 종속성이었기 때문에 두 가지 버전의 NPM을 설정하지 않았습니다. 또한 둘 다 설치했을 때 기본적으로초콜릿/빈어떤 이유로 버전이 아닌프로그램 파일버전. 나는 그게 이상하다고 생각했다.
제가 말하는 내용이 잘못된 것 같으면 언제든지 이 질문에 답해 주시기 바랍니다. 나는 Chocolatey에 관한 고급 사용자가 아니므로 내 답변이 어떤 식으로든 틀렸다는 사실을 알고 계신다면 귀하의 답변을 확인하고 실제로 내 답변이 맞다면 정답으로 표시하겠습니다.