Публикация для выпуска и указание c ОС одновременно не работает для. NET Core 3.1 - PullRequest
0 голосов
/ 14 июля 2020

Я пытаюсь выполнить следующую команду для своего. NET Core 3.1. Консольное приложение в папке D: \ core:

D: \ core> do tnet publi sh - c Release –r ubuntu-x64 --self -hibited true

И выдает ошибку:

MSBUILD: error MSB1008: Можно указать только один проект. Переключатель: ubuntu-x64

Для синтаксиса переключателя введите «MSBuild -help»

Когда я использую эти две команды по отдельности, они работают отлично, но мне нужен Release для Ubuntu; когда я не пытаюсь указать Release для Ubuntu, он создает папку Publi sh в папке Debug:

D: \ core> do tnet publi sh –r ubuntu-x64 - -самодостаточный true

D: \ core> do tnet publi sh - c Release

Подводя итог, проблема в что в настоящее время я не могу опубликовать sh для выпуска для указанной ОС.

1 Ответ

2 голосов
/ 14 июля 2020

У вас есть –r в вашей команде. Это em-da sh (), за которым следует r. Вы пробовали использовать обычный тире / дефис?

У меня работает:

$ dotnet new console
Getting ready...
The template "Console Application" was created successfully.

Processing post-creation actions...
Running 'dotnet restore' on /home/omajid/temp/HelloWorld/HelloWorld.csproj...
  Determining projects to restore...
  Restored /home/omajid/temp/HelloWorld/HelloWorld.csproj (in 66 ms).

Restore succeeded.

$ dotnet publish -c Release -r ubuntu-x64 --self-contained true
Microsoft (R) Build Engine version 16.7.0-preview-20220-01+80e487bff for .NET Core
Copyright (C) Microsoft Corporation. All rights reserved.

  Determining projects to restore...
  Restored /home/omajid/temp/HelloWorld/HelloWorld.csproj (in 16.86 sec).
  You are using a preview version of .NET. See: https://aka.ms/dotnet-core-preview
  HelloWorld -> /home/omajid/temp/HelloWorld/bin/Release/net5.0/ubuntu-x64/HelloWorld.dll
  HelloWorld -> /home/omajid/temp/HelloWorld/bin/Release/net5.0/ubuntu-x64/publish/

В сторону: вы должны использовать идентификатор среды выполнения linux-x64, а не ubuntu-x64. linux-x64 совместим с Ubuntu, но также и со многими другими дистрибутивами.

...