Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом руководстве показано, как опубликовать консольное приложение, чтобы другие пользователи могли его запустить. Публикация создает набор файлов, необходимых для запуска приложения. Чтобы развернуть файлы, скопируйте их на целевой компьютер.
Интерфейс командной строки .NET используется для публикации приложения.
Необходимые условия
- В этом руководстве используется консольное приложение, которое вы создаете в создайте консольное приложение .NET с помощью Visual Studio Code.
Публикация приложения
Запустите Visual Studio Code.
Откройте папку проекта HelloWorld, созданную в Создание консольного приложения .NET с помощьюVisual Studio Code.
Выберите вид>терминал из главного меню.
Терминал откроется в папке HelloWorld.
Выполните следующую команду:
dotnet publishКонфигурация сборки по умолчанию —выпуска
, которая подходит для развернутого сайта, работающего в рабочей среде. Результат конфигурации сборки Release имеет минимальную символьную отладочную информацию и полностью оптимизирован. Выходные данные команды аналогичны следующему примеру:
Restore complete (1.1s) HelloWorld net10.0 succeeded (7.8s) → bin\Release\net10.0\publish\ Build succeeded in 10.3s
Откройте GitHub Codespace, которое вы создали в рамках задания Создание консольного приложения .NET с использованием Visual Studio Code.
Добавьте следующую строку кода в начало HelloWorld.cs:
#:property PublishAot=falseЭта директива свойства отключает встроенную компиляцию заранее (AOT), и приложение будет использовать стандартный JIT-компилятор во время выполнения. Опубликованные выходные данные будут зависеть от платформы.
В терминале убедитесь, что вы находитесь в папке учебников .
Выполните следующую команду:
dotnet publish HelloWorld.csКоманда создает независимый исполняемый файл.
Выходные данные команды аналогичны следующему примеру:
Restore complete (0.5s) HelloWorld net10.0 succeeded (4.0s) → artifacts\HelloWorld\ Build succeeded in 5.1s
Проверка файлов
По умолчанию процесс публикации создает развертывание, зависящее от платформы, которое является типом развертывания, в котором опубликованное приложение выполняется на компьютере с установленной средой выполнения .NET. Чтобы запустить опубликованное приложение, можно использовать исполняемый файл или выполнить команду dotnet HelloWorld.dll из командной строки.
В следующих шагах вы изучите файлы, созданные процессом публикации.
Выберите обозреватель в левой панели навигации.
Разверните bin/Release/net10.0/publish.
Обозреватель
Как показано на рисунке, опубликованные выходные данные включают следующие файлы:
HelloWorld.deps.json
Это файл зависимостей среды выполнения приложения. Он определяет компоненты .NET и библиотеки (включая библиотеку динамической компоновки, содержащую приложение), необходимые для запуска приложения. Дополнительные сведения см. в файлах конфигурации среды выполнения.
HelloWorld.dll
Это зависимое от платформы развертывание версии приложения. Чтобы запустить эту библиотеку динамической компоновки, введите
dotnet HelloWorld.dllв командной строке. Этот метод запуска приложения работает на любой платформе с установленной средой выполнения .NET.HelloWorld.exe (HelloWorld в Linux или macOS.)
Это исполняемый файл, зависящий от платформы, версии приложения. Файл зависит от операционной системы.
HelloWorld.pdb (необязательно для развертывания)
Это файл символов отладки. Не требуется развертывать этот файл вместе с приложением, однако его следует сохранить на случай, если потребуется отладка опубликованной версии приложения.
HelloWorld.runtimeconfig.json
Это файл конфигурации среды выполнения приложения. Он определяет версию .NET, в которую приложение было создано для запуска. В него также можно добавить параметры конфигурации. Дополнительные сведения см. в параметрах конфигурации среды выполнения .NET.
Для однофайловых приложений процесс публикации создает каталог артефактов с скомпилированным файлом сборки. Опубликованное приложение можно запустить с помощью dotnet команды.
В следующих шагах вы изучите файлы, созданные процессом публикации.
Выберите обозреватель в левой панели навигации.
Откройте артефакты/HelloWorld.
Обозреватель
Как показано на рисунке, опубликованные выходные данные включают следующие файлы:
Helloworld
Это исполняемый файл, зависящий от платформы, версии приложения. Файл зависит от операционной системы. Функция Codespaces работает на Linux, поэтому это исполняемый файл Linux.
HelloWorld.deps.json
Это файл зависимостей среды выполнения приложения. Он определяет компоненты .NET и библиотеки (включая библиотеку динамической компоновки, содержащую приложение), необходимые для запуска приложения. Дополнительные сведения см. в файлах конфигурации среды выполнения.
HelloWorld.dll
Это зависимое от платформы развертывание версии приложения. Чтобы запустить эту библиотеку динамической компоновки, введите
dotnet HelloWorld.dllв командной строке. Этот метод запуска приложения работает на любой платформе с установленной средой выполнения .NET.HelloWorld.pdb (необязательно для развертывания)
Это файл символов отладки. Не требуется развертывать этот файл вместе с приложением, однако его следует сохранить на случай, если потребуется отладка опубликованной версии приложения.
HelloWorld.runtimeconfig.json
Это файл конфигурации среды выполнения приложения. Он определяет версию .NET, в которую приложение было создано для запуска. В него также можно добавить параметры конфигурации. Дополнительные сведения см. в параметрах конфигурации среды выполнения .NET.
Щелкните правой кнопкой мыши и выберите "Скачать..." , чтобы скачать файлы из codespaces на локальный компьютер.
Запуск опубликованного приложения
В Проводнике щелкните правой кнопкой мыши папку публикации (на macOS нажмитеCTRLи кликните), и выберите Открыть в интегрированном терминале .
контекстное меню
В Windows или Linux запустите приложение с помощью исполняемого файла.
В Windows введите
.\HelloWorld.exeи нажмите клавишу ВВОД.В Linux введите
./HelloWorldи нажмите клавишу ВВОД.Введите имя в ответ на запрос и нажмите клавишу ВВОД, чтобы выйти.
На любой платформе запустите приложение с помощью команды
dotnet:Введите
dotnet HelloWorld.dllи нажмите .Введите имя в ответ на запрос и нажмите клавишу ВВОД, чтобы выйти.
В обозревателе щелкните правой кнопкой мыши папку артефактов/HelloWorld и выберите "Открыть" в интегрированном терминале.
Запустите приложение с помощью исполняемого файла. Введите
./HelloWorldи нажмите клавишу ВВОД.Введите имя в ответ на запрос и нажмите клавишу ВВОД, чтобы выйти.
Дополнительные ресурсы
- Обзор публикации приложений .NET
dotnet publish- Использование пакета SDK для .NET в средах непрерывной интеграции (CI)
Очистка ресурсов
GitHub автоматически удаляет пространство Codespace через 30 дней бездействия. Если вы планируете ознакомиться с дополнительными руководствами в этой серии, вы можете оставить ваш Codespace активным. Если вы готовы посетить сайт .NET , чтобы скачать пакет SDK для .NET, можно удалить пространство Codespace. Чтобы удалить ваш Codespace, откройте окно браузера и перейдите к вашим Codespace. В окне вы видите список ваших codespaces. Выберите три точки (...) в записи пространства кода учебного руководства. Затем выберите "Удалить".
Дальнейшие действия
В этом руководстве вы опубликовали консольное приложение. В следующем руководстве вы создадите библиотеку классов.