背景
我按照ArchWiki 指南在 Arch GNU/Linux 上安裝了 .NET 框架。
主要軟體包是:
dotnet-runtime運行 .NET 托管應用程式dotnet-sdk使用 .NET 構建應用程式
此外,我添加~/.dotnet/tools了,PATH以便我可以使用 shell 中的 dotnet 工具。我已經通過添加
export PATH="$PATH:/home/MyUserName/.dotnet/tools"
到我的~/.zshenv檔案。
問題
一切正常,我能夠構建一些控制臺應用程式。但是,當我嘗試構建 ASP.NET Core Web App 時,遇到了一些問題。
首先,我通過運行以下命令創建了一個新的 Web 應用程式:
dotnet new webapp -n MyAppsName --framework net6.0
當我嘗試構建和運行時,我收到以下錯誤:
Building...
You must install or update .NET to run this application.
App: /home/MyUserName/RestOfThePath/MyAppsName/bin/Debug/net6.0/MyAppsName
Architecture: x64
Framework: 'Microsoft.AspNetCore.App', version '6.0.0' (x64)
.NET location: /usr/share/dotnet
No frameworks were found.
Learn about framework resolution:
https://aka.ms/dotnet/app-launch-failed
To install missing framework, download:
https://aka.ms/dotnet-core-applaunch?framework=Microsoft.AspNetCore.App&framework_version=6.0.0&arch=x64&rid=arch-x64
似乎缺少框架(或適當的版本)。但是,當我運行時dotnet --info,似乎我需要的任何東西都沒有丟失。下面是上一個命令的輸出。
.NET SDK (reflecting any global.json):
Version: 6.0.109
Commit: 58a93139d8
Runtime Environment:
OS Name: arch
OS Version:
OS Platform: Linux
RID: arch-x64
Base Path: /usr/share/dotnet/sdk/6.0.109/
global.json file:
Not found
Host:
Version: 6.0.9
Architecture: x64
Commit: 163a63591c
.NET SDKs installed:
6.0.109 [/usr/share/dotnet/sdk]
.NET runtimes installed:
Microsoft.NETCore.App 6.0.9 [/usr/share/dotnet/shared/Microsoft.NETCore.App]
Download .NET:
https://aka.ms/dotnet-download
Learn about .NET Runtimes and SDKs:
https://aka.ms/dotnet/runtimes-sdk-info
我錯過了什么?任何幫助,將不勝感激。
PS這里是微軟的官方文章,旨在幫助解決這個特定問題。它沒有提供任何新的見解。
uj5u.com熱心網友回復:
.Net(注意,從 .Net 5 開始,它只是稱為“.Net”,而不是“.Net Core”或“.Net Framework”)分布在三個不同的包中。
您缺少的是aspnet-runtime.
dotnet-sdk讓您編譯源代碼。dotnet-runtime讓您運行基本的應用程式。aspnet-runtime附帶了許多特定于 ASP.Net 的額外內容,因此它是單獨分發的。
通常(例如在 Windows 上),當您安裝 .Net Sdk 時,它還會安裝 ASP.Net 運行時。似乎在 Arch 上,SDK 包不依賴于aspnet-runtime.
安裝aspnet-runtime并dotnet --info再次運行后,您將在“.NET runtimes installed”部分下看到“Microsoft.NETCore.App”(dotnet-runtime提供的內容)和 Microsoft.AspNetCore.App(aspnet-runtime提供的內容)的條目。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/513896.html
