58

今日、VS 2015 を Windows 7 x64 にインストールしました。主に新しい .Net Core 機能などをテストします。テストのために、新しい C#「コンソール アプリケーション (パッケージ)」ソリューションを作成し、次のメッセージを受け取りました。

DNX SDK バージョン 'dnx-clr-win-x86.1.0.0-beta5' のインストールに失敗しました。ソリューションは、このセッションに DNX SDK バージョン 'dnx-clr-win-x86.1.0.0-beta5' を使用します。

プロジェクトをコンパイルおよびデバッグできません。また、プロジェクトのプロパティでデバッグ タブを開くと、VS がクラッシュしました。

ソリューションを開いたときの DNVM 出力:

Invoke-Command : The term 'x86' is not recognized as the name of a cmdlet, func
tion, script file, or operable program. Check the spelling of the name, or if a
 path was included, verify that the path is correct and try again.
C:\Program Files\Microsoft DNX\Dnvm\dnvm.ps1:1451 ????:27
+             Invoke-Command <<<<  ([ScriptBlock]::Create("dnvm-$cmd $cmdargs")
)
    + CategoryInfo          : ObjectNotFound: (x86:String) [Invoke-Command], C 
   ommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException,Microsoft.PowerShell.Co 
   mmands.InvokeCommandCommand

Invoke-Command : The term 'x86' is not recognized as the name of a cmdlet, func
tion, script file, or operable program. Check the spelling of the name, or if a
 path was included, verify that the path is correct and try again.
C:\Program Files\Microsoft DNX\Dnvm\dnvm.ps1:1451 ????:27
+             Invoke-Command <<<<  ([ScriptBlock]::Create("dnvm-$cmd $cmdargs")
)
    + CategoryInfo          : ObjectNotFound: (x86:String) [Invoke-Command], C 
   ommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException,Microsoft.PowerShell.Co 
   mmands.InvokeCommandCommand

Invoke-Command : The term 'x86' is not recognized as the name of a cmdlet, func
tion, script file, or operable program. Check the spelling of the name, or if a
 path was included, verify that the path is correct and try again.
C:\Program Files\Microsoft DNX\Dnvm\dnvm.ps1:1451 ????:27
+             Invoke-Command <<<<  ([ScriptBlock]::Create("dnvm-$cmd $cmdargs")
)
    + CategoryInfo          : ObjectNotFound: (x86:String) [Invoke-Command], C 
   ommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException,Microsoft.PowerShell.Co 
   mmands.InvokeCommandCommand

それを修正する方法はありますか?

また、以前に VS 2015 Preview と DNX/DNVM を別々にインストールしました。しかし、VS 2015のインストール前に完全に削除したと思います。これは現在のVSのインストールに何らかの影響を与える可能性がありますか?

4

8 に答える 8

55

これは既知の問題です。

ASP.NET 5: Windows 7 SP1 では、Powershell 3.0 がないと DNX SDK をインストールできません。

症状

ASP.NET 5 プロジェクトを作成すると、次のエラー メッセージが表示されます。

DNX SDK バージョン 'dnx-clr-win-x86.1.0.0-beta5' のインストールに失敗しました。ソリューションは、このセッションに DNX SDK バージョン 'dnx-clr-win-x86-1.0.0-beta5' を使用します

回避策

この問題を回避するには、Windows Powershell 3.0 (またはそれ以降) をインストールして、プロジェクトの作成を再試行してください。現在の PS バージョンを確認するには、$PsVersionTableコマンド ( details ) を実行します。

リンク:

于 2015-07-21T20:44:58.247 に答える
7

この方法で修正できます:2015年の開発者コマンドプロンプトで、次のコマンドを入力します

dnvm インストール 1.0.0-beta5

この方法で問題を解決できることを確認してください。

于 2015-11-09T06:48:00.560 に答える
0

私は今日、同様の問題を抱えていましたが、このページのコメントを読んだ後にそれを解決する方法は非常に簡単でした.

まず第一に、既に PowerShell 3.0 がインストールされていると言わざるを得ません (インストールされていないことが、ほとんどの人にとってこの問題の主な原因のようです) が、それでも同じ問題が発生していました。

したがって、関連するpowershellスクリプトを編集および変更して、空白を含むパスなどで機能させる必要がある代わりに、次のようにしました(はるかに簡単です):

1.- Windows エクスプローラーで「C:\Program Files (x86)\Microsoft Web Tools\DNX」に移動し、そのすべてのコンテンツ (基本的にすべてのパッケージとそのサブフォルダー) を「コピー」します。

2.-すべてのコンテンツを空白のないパスに「貼り付け」ます。「C:\Temp\」を​​使用しました

3.- コマンド ラインで次のコマンドを実行します (示されたパスの場所に空白が含まれていないことに注意してください)。

dnvm update-self
dnvm install "C:\Temp\dnx-clr-win-x64.1.0.0-beta5.nupkg"
dnvm install "C:\Temp\dnx-coreclr-win-x64.1.0.0-beta5.nupkg"
dnvm list

4.- 今すぐ Visual Studio ソリューションを開き、[プロジェクト] -> [プロパティ] -> [アプリケーション] タブで、現在利用可能なバージョンから使用する DNX SDK のバージョンを指定できます。

5.- ソリューションを再構築すると、問題なく動作するはずです

良いですね!

于 2015-12-05T01:13:33.663 に答える