[] Windows Server 2016
[]私のWindowsインストールは英語以外です。
nvm use <version>
は、 C:\ Program Files \ nodejsまたはファイルsettings.txtのパス引数で指定された値にシンボリックリンクを作成する必要があります
昇格したシェルからnvmuseを実行しても、シンボリックリンクが常に作成されるとは限りません。
nvm install 6.9.1
nvm use 6.9.1
elevate.cmdスクリプトによってプロンプトが表示され、「はい」と答えます。シンボリックリンクは作成されません。
関連しているかどうかはわかりませんが、PowerShellからnvm use
を実行しています。
また、それはちょっとランダムです。いくつかのウィンドウ10で問題が発生し、他のウィンドウでは問題が発生しません。
良い回避策は、cmd.exemklinkの実行後にシンボリックリンクが作成されるかどうかをテストすることだと思います。 シンボリックリンクが存在しない場合は、powershellコマンドnew-itemを実行してリンクを作成します
nvm use
実行した後、実際にシンボリックリンクが表示されませんか? Powershellではなく標準シェルでコマンドを実行してみましたか?
中国語の解釈:
1. window10にnvmをインストールするには、最初にコンピューター自体にインストールされているノードを削除します。これは、nvmがwindow10にインストールされているnvmを管理できないためです(レジストリの変更に失敗したと報告されています)。
2. nvmをインストールした後、nvm自体を使用してノードをインストールします
3. NODE_PATHをC:\ Program Files \ nodejsに変更します。nvmは「C:\ ProgramFiles \ nodejs」にソフト接続を作成し、「nvmroot」に接続するためです(nvm rootはノードの実際のディレクトリを指します)
@coreybutler :いいえ
Powershellではなく標準シェルでコマンドを実行してみましたか?
=>要点はPowerShellから実行することです。 実際、私は多くの依存関係をインストールしてVMを構成するスクリプトを実行します。 これがスクリプトのサブセットです
$wc = New-Object System.Net.WebClient
# configure repositories
Set-PSRepository -Name PSGallery -InstallationPolicy Trusted
Get-Packageprovider -Name chocolatey
Set-PackageSource -Name Chocolatey -Trusted
Install-Package 7zip.install -ProviderName Chocolatey -RequiredVersion 16.02.0.20160811
$env:PATH+=";C:\Program Files\7-Zip"
$source = "https://github.com/coreybutler/nvm-windows/releases/download/1.1.3/nvm-setup.zip"
$archive = Join-Path $env:TEMP ($source.substring($source.lastindexOf('/') + 1))
$wc.DownloadFile($source, $archive)
echo "downloaded at: $archive"
7z x -aoa -y $archive "-o$env:TEMP"
#$uninstallScript = (Join-Path $PSScriptRoot uninstall_cmdline.ps1)
#&$uninstallScript -software "NVM for Windows*" | Out-Null
$nvmSetup = Join-Path $env:TEMP "nvm-setup.exe"
Start-Process $nvmSetup -ArgumentList @("/SILENT", "/SP-", "/SUPPRESSMSGBOXES") -Wait
ri $archive
ri $nvmSetup
$localNvmPath = Join-Path $env:APPDATA "nvm"
$defaultNodejsPath = "C:\Program Files\nodejs"
#Add-Path $localNvmPath
#Add-Env NVM_HOME $localNvmPath
ri $defaultNodejsPath -ErrorAction SilentlyContinue -Recurse -Force
nvm root $env:NVM_HOME
nvm install 4.5.0
nvm use 4.5.0
#create manually symlink if problem with nvm use, see https://github.com/coreybutler/nvm-windows/issues/266
#$nodePath = Join-Path $localNvmPath "v4.5.0"
#if ((-Not (Test-Path $nodePath) -or (-Not (Test-Path $defaultNodejsPath))))
#{
# Start-Process powershell -Verb runAs -ArgumentList "-WindowStyle Hidden", "-Command `"&{ New-Item -Path `'$defaultNodejsPath`' -Value `'$nodePath`' -ItemType SymbolicLink }`"" -Wait -WindowStyle Hidden
#}
このスクリプトをps1ファイルに入れて、そのまま実行できるはずです。 変数をenvに追加し、フォルダーの場所をPATHに追加するAdd-Env関数とAdd-Path関数についてコメントしました。 また、以前にインストールされていた場合は基本的にnvmをアンインストールするアンインストールスクリプト呼び出しについてもコメントしました。 また、見つけた回避策についてコメントしました。シンボリックリンクを手動で作成します。
@ youzaiyouzai666 :Windows 10 Enterprise