Für alle, die jetzt sehen, dass dies nicht mehr funktioniert, scheint es, dass Sie ab dem Update am 10. November 2020 die Projektdatei jetzt angeben müssen, da sie nicht mehr gerne eine bestimmte Laufzeit auf einer Lösung (.sln) verwendet.
Ein diesbezügliches Problem wurde hier (https://github.com/dotnet/sdk/issues/14281) gemeldet, aber offensichtlich wird das nicht sofort gelöst.
Also früher, wo dies funktionieren würde:
dotnet build --runtime ubuntu.xx.xx-x64
Es will jetzt so etwas wie das:
dotnet build ProjectName.csproj --runtime ubuntu.xx.xx-x64
dotnet publish **path to your solution** --configuration Release --framework netcoreapp3.0 --output .**output path** --self-contained false --runtime linux-x64 --verbosity quiet
Option 1:Befehlszeile
dotnet build ProjectFile.csproj --runtime linux-x64
Funktioniert unter Linux und Windows und Mac.
Option 2:Visual Studio
Sie können Ihre App auch in Visual Studio „veröffentlichen“, wenn Sie dies bevorzugen. Wählen Sie die Veröffentlichungsmethode "Dateisystem" und legen Sie diese Einstellung fest:
Mit dem Befehl dotnet build können Sie --runtime
angeben Flagge
-r|--runtime
Ziellaufzeit, für die erstellt werden soll. Eine Liste der Runtime Identifiers (RIDs), die Sie verwenden können, finden Sie im RID-Katalog.
RIDs, die konkrete Betriebssysteme darstellen, folgen normalerweise diesem Muster [os].[version]-[arch]
Um beispielsweise ein Projekt und seine Abhängigkeiten für die Ubuntu 16.04-Laufzeit zu erstellen, verwenden Sie:
dotnet build --runtime ubuntu.16.04-x64