Как установить Node Version Manager(NVM) без прав администратора

У меня нет прав администратора в моей машине Windows. Могу ли я установить NVM без прав администратора? Я попытался использовать путь установки переменной среды, но в моем случае это не работает.

5 ответов

У меня такая же потребность, и я не смог ее найти, поэтому я создал одну базу на другом простом nvm:

https://www.npmjs.com/package/@jchip/nvm

Требуется PowerShell 4+ и разрешение на выполнение сценариев.

(Вы говорите о https://github.com/coreybutler/nvm-windows верно?)

Если вы можете установить его без прав администратора, фактическое переключение версий узлов требует их, так что у вас будут проблемы.

Лучше всего вручную устанавливать разные версии узла на разные пути, а затем настраивать переменные среды так, чтобы они указывали на правильную, когда вам это нужно.

например. префикс вашего сценария cmd с PATH=C:\node\v10;%PATH% чтобы любой узел или вызовы npm в этом скрипте использовали любой узел, который находится в v10

попробуй это

создайте bat-файл, как показано ниже

      @cd C:\Users\testuser\AppData\Roaming\nvm

@SET PATH=C:\Users\testuser\AppData\Roaming\nvm\v14.21.1;%PATH%

cd c:\users\testuser\Desktop\Project

@cmd.exe /K

Запустите bat файл и введите

      code .

Он открыт с помощью VSCode

перейдите в терминал и введите node, и вы увидите версию узла, которую вы установили в файле bat.

введите описание изображения здесь

Вы можете применить любую версию узла, как указано выше в файле bat.

Недостаток NVM заключается в том, что для перехода между версиями узла требуются права администратора. Если вы работаете в компании, получить его может быть сложно. Я советую скопировать папку NVM в любую папку, к которой у пользователя есть доступ. (В качестве альтернативы можно получить несколько версий Node для Windows из другого источника). Добавьте файл Profile.ps1 в указанное расположение.

C:\Users\<пользователь>\Documents\WindowsPowerShell\profile.ps1

Измените путь к каталогу, а затем вставьте эти строки в файл.

# $env:PATH += ";C:\Users\<пользователь>\Documents\nvm\v14.21.3"

$env:PATH += ";C:\Users\<пользователь>\Documents\nvm\v16.20.1"

# $env:PATH += ";C:\Users\<пользователь>\Documents\nvm\v18.17.0"

# $env:PATH += ";C:\Users\<пользователь>\Documents\nvm\v20.5.0"

После этого выполните строку, указанную ниже, в «PowerShell». Выполнение должно осуществляться только из каталога «C:\Users\<user>\Documents\WindowsPowerShell». Это для получения необходимых прав для запуска файла «profile.ps1».

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Этот файл действует как файл «.bashrc» в системах unix. Таким образом, он будет запускаться каждый раз, когда вы открываете PowerShell, и содержит версию узла без комментариев.

Если вы используете Git Bash в Windows, вы можете добавить это в свой bash.bashrc для переключения версий узлов:

export PATH=/c/path/to/node/dir:$PATH

Затем просто перезапустите терминал, чтобы получить обновленный PATH.

Он добавит к вашему пути желаемую версию узла. Я нашел единственный способ переопределить установленную версию узла, если у вас нет прав администратора на вашем компьютере.

Другие вопросы по тегам