配置 .NET Core 以使用 x86 SDK
Configure .NET Core to use x86 SDK
我正在尝试更改我的 .NET Core Web 应用程序以使用 x86 版本的 .NET Core SDK。
我从 here 安装了 x86 版本。我可以在 C:\Program Files (x86)\dotnet\sdk.0.0-preview2-003131
中看到它
我将 global.json 更新为:
{
"projects": [ "src" ],
"sdk": {
"version": "1.0.0-preview2-003131",
"architecture": "x86"
}
}
但是我收到错误:
项目配置使用.NET Core SDK版本1.0.0-preview2-003131,未安装或在路径C:\ProgramFiles\dotnet下找不到。这些组件是构建和 运行 这个项目所必需的。下载global.json中指定的.NET Core SDK版本或将global.json中的SDK版本更新为安装的版本。
我想我需要告诉我的应用程序查看 C:\Program Files (x86)\dotnet
我该怎么做?
感谢您的帮助!
找到解决方案。
当我安装 x64 版本时,它在我的 PATH 环境变量中创建了一个名为 C:\Program Files\dotnet 的条目。我卸载了 x64 版本并安装了 x86 版本。但是,x64 版本的卸载并没有从我的 PATH 中删除 C:\Program Files\dotnet。因此,我手动删除了它,并确保 x86 版本添加的条目 C:\Program Files (x86)\dotnet 存在。
出于某种原因,我的安装甚至没有添加 PATH 变量。添加 64 位路径变量并重新启动 visual studio 对我有用。
问题已知,卸载之前的版本后
The install this based on the correct release version and target platform
您可以通过在项目的根目录中创建一个 Directory.Build.targets
文件来解决这个问题。
<Project>
<PropertyGroup
Condition="'$(OS)' == 'Windows_NT' and
'$(TargetFrameworkIdentifier)' == '.NETCoreApp' and
'$(SelfContained)' != 'true'"
>
<RunCommand Condition="'$(PlatformTarget)' == 'x86'">$(MSBuildProgramFiles32)\dotnet\dotnet</RunCommand>
<RunCommand Condition="'$(PlatformTarget)' == 'x64'">$(ProgramW6432)\dotnet\dotnet</RunCommand>
</PropertyGroup>
</Project>
现在,安装两个 SDK(x64、x86)后,编译器将找到正确的平台,如您的项目构建设置中指定的那样。
万一它能帮助到别人,我将解释解决方案。
进入控制面板 -> 写入搜索环境变量 -> 编辑系统环境变量 -> 环境变量 -> 系统变量 -> 路径,然后按编辑。
到达那里后,将“C:\Program Files\dotnet”移动到“C:\Program Files (x86)\dotnet”下方。
重新启动您的终端,它应该可以工作了
我正在尝试更改我的 .NET Core Web 应用程序以使用 x86 版本的 .NET Core SDK。
我从 here 安装了 x86 版本。我可以在 C:\Program Files (x86)\dotnet\sdk.0.0-preview2-003131
中看到它我将 global.json 更新为:
{
"projects": [ "src" ],
"sdk": {
"version": "1.0.0-preview2-003131",
"architecture": "x86"
}
}
但是我收到错误:
项目配置使用.NET Core SDK版本1.0.0-preview2-003131,未安装或在路径C:\ProgramFiles\dotnet下找不到。这些组件是构建和 运行 这个项目所必需的。下载global.json中指定的.NET Core SDK版本或将global.json中的SDK版本更新为安装的版本。
我想我需要告诉我的应用程序查看 C:\Program Files (x86)\dotnet
我该怎么做?
感谢您的帮助!
找到解决方案。
当我安装 x64 版本时,它在我的 PATH 环境变量中创建了一个名为 C:\Program Files\dotnet 的条目。我卸载了 x64 版本并安装了 x86 版本。但是,x64 版本的卸载并没有从我的 PATH 中删除 C:\Program Files\dotnet。因此,我手动删除了它,并确保 x86 版本添加的条目 C:\Program Files (x86)\dotnet 存在。
出于某种原因,我的安装甚至没有添加 PATH 变量。添加 64 位路径变量并重新启动 visual studio 对我有用。
问题已知,卸载之前的版本后
The install this based on the correct release version and target platform
您可以通过在项目的根目录中创建一个 Directory.Build.targets
文件来解决这个问题。
<Project>
<PropertyGroup
Condition="'$(OS)' == 'Windows_NT' and
'$(TargetFrameworkIdentifier)' == '.NETCoreApp' and
'$(SelfContained)' != 'true'"
>
<RunCommand Condition="'$(PlatformTarget)' == 'x86'">$(MSBuildProgramFiles32)\dotnet\dotnet</RunCommand>
<RunCommand Condition="'$(PlatformTarget)' == 'x64'">$(ProgramW6432)\dotnet\dotnet</RunCommand>
</PropertyGroup>
</Project>
现在,安装两个 SDK(x64、x86)后,编译器将找到正确的平台,如您的项目构建设置中指定的那样。
万一它能帮助到别人,我将解释解决方案。 进入控制面板 -> 写入搜索环境变量 -> 编辑系统环境变量 -> 环境变量 -> 系统变量 -> 路径,然后按编辑。
到达那里后,将“C:\Program Files\dotnet”移动到“C:\Program Files (x86)\dotnet”下方。
重新启动您的终端,它应该可以工作了