Para cualquiera que ahora vea que esto ya no funciona, parece que a partir de la actualización del 10 de noviembre de 2020, debe especificar el archivo del proyecto ahora, ya que ya no le gusta usar un tiempo de ejecución específico en una solución (.sln).
Se planteó un problema sobre esto aquí (https://github.com/dotnet/sdk/issues/14281), pero obviamente eso no se resolverá de inmediato.
Entonces, anteriormente, dónde funcionaría esto:
dotnet build --runtime ubuntu.xx.xx-x64
Quiere algo como esto ahora:
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
Opción 1:línea de comandos
dotnet build ProjectFile.csproj --runtime linux-x64
Funciona en Linux, Windows y Mac.
Opción 2:Visual Studio
También puede "publicar" su aplicación en Visual Studio si lo prefiere. Elija el método de publicación "Sistema de archivos" y establezca esta configuración:
Usando el comando dotnet build, puede especificar --runtime
bandera
-r|--tiempo de ejecución
Tiempo de ejecución de destino para compilar. Para obtener una lista de identificadores de tiempo de ejecución (RID) que puede usar, consulte el catálogo de RID.
Los RID que representan sistemas operativos concretos suelen seguir este patrón [os].[version]-[arch]
Por ejemplo, para crear un proyecto y sus dependencias para el tiempo de ejecución de Ubuntu 16.04, use:
dotnet build --runtime ubuntu.16.04-x64