Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 20810|Відповідь: 0

[Джерело] Як Jekins розгортає проєкт .NET Framework

[Копіювати посилання]
Опубліковано 22.11.2018 10:29:09 | | | |
Примітка: У цій статті використання термінів «build», «continuous build», «compile» та «generate» не є суворим, просто знайте, що це означає.

По-перше, якщо хочете будувати безперервно, потрібно використовувати командний рядок.
Але команди dotnet core здаються трохи простішими, ніж проєкт Dotnet Framework.
Бо команда Build у dotnetcore —Dotnet MSbuild xxxxx.csproj/yyyyy.sln
А команда build у dotnet-фреймворку — це.../msbuild.exe xxxx.csproj/yyyyy.sln, і найзаплутаніша річ серед них (переважно тих, хто ніколи не падає в яму, просто кинь це) — це ось щоmsbuild.exeДе саме він?msbuild.exe? Адже після встановлення SDK Dotnet Framework або різних версій Visual Studio у Windows їх буде багатоmsbuild.exe, люди не розуміють, який саме слід використовувати.

Почнемо з того, як створити проєкт Dotnet Framework у Windows, щоб не дозволити складності самого проєкту вплинути на основну ідею, тут ми вважаємо, що хочемо створити простий консольний проєкт, схожий на Hello World.
Підсумовуючи, довкілля:
машині розробки, Windows PC;
Видавнича машина, Windows Server;
Проєкт — простий консольний проєкт Dot Net Framework. (Я використовую версію 4.5.2)

на

Найкраще ініціалізувати новий проєкт на машині розробки за допомогою керування кодом, такого як git, щоб проєкт можна було клонувати на інших машинах із мережею.
Що б ви не написали у проєкті на машині розробки, головне, щоб це можна було скомпілувати. Наприклад, hello world.
Крім того, рекомендується додати трохи залежності від пакету nuget до проєкту і вибрати будь-які варіанти, наприклад, посилання на log4net.
Спробуйте скомпілювати проєкт на машині розробки.
(Після багатьох спроб було підтверджено, що командний рядок має використовувати msbuild.exe C:\windows\Microsoft .NET\Framework\v4.xxx\msbuild.exe при компіляції проєкту.) Однак конкретний тип проєкту все одно залежить від типу, обирайте Framework64 чи ні 64, чи це v4.xxx чи 3.x, 2.x — це дуже просте значення, якщо ви не зрозумієте, це буде безпорадно)
Якщо проєкт знаходиться у маршруті C:\projects\test, то скомпільована команда має виглядати так:

або
Звісно, можливо, доведеться додати й інші параметри, такі як /p:Configuration=Release /p:plotform="Будь-який процесор", залежно від ситуації.

4. На тестовій машині клонуйте проєкт у git і спробуйте скомпілювати проєкт тією ж командою.
5. Якщо вам не вдасться, ви повинні продовжувати пробувати правильні msbuild.exe, шляхи, параметри тощо, якщо в навколишньому середовищі немає проблем, ви обов'язково досягнете успіху.
6. Однак виникає дуже дратівливе питання: а як щодо залежностей Nuget? Зараз у мене немає очевидних проблем із компіляцією, але як мені дізнатися, де знайти пакет nuget?
Це питання довго мене турбувало.
Перейдіть на офіційний сайт NuGet і завантажте nuget.exe файл.
Після спроби цей файл поміщається в проєкт (тобто в той самий каталог, що й файл SLN або CSPROJ) і виконуєтьсяnuget.exe відновленняЩоб отримати необхідний пакет Nuget. Ось такий досвід я отримав після багатьох спроб)
Ну, ви можете додати дію до скрипта і виконувати команду nuget.exe відновлення щоразу.
Також було б трохи зручніше додати nuget.exe до змінної середовища (без пояснень) і виконувати її щоразу.
7. Нарешті, я протестував і з'ясував, що проєкт можна успішно скомпілювати за допомогою таких операцій і команд на видавничій машині.
Це майже остаточний успіх.
Насправді, для тих, хто розуміє, що таке джекіни, це кінець справи, а решту можна зробити самостійно.

Нижче

1. Зайдіть на офіційний сайт Jekins, завантажте, встановте, запустіть Jekins, зареєструйте акаунт — без пояснень. Для dotnet-проєктів потрібно встановити плагіни msbuild, mstest і mstestrunner.

2. Глобальна конфігурація Jenkins msbuild.



3. Створіть новий проєкт і налаштуйте його



4. Побудуйте проєкт.

В основному, будівництво успішне, і її легко діагностувати, навіть якщо вона не вдала.

Насправді, щодо використання jekins, більше з цього вивчається самостійно і багато разів намагається зрозуміти.

Доповнення:

1. Якщо VS можна успішно скомпілювати, але в командному рядку є непідтримуваний синтаксичний рядок.
Можливо, розробник компілює з більш просунутими синтаксичними правилами (хоча проєкт базується на .NET фреймворку 4.5.2), наприклад, C# 6.0
Релізна машина встановила лише .NET framework 4.5.2, тому не підтримує деякі з останніх синтаксисів.
Отже, у цьому випадку встановіть останній SDK на релізний комп'ютер.
Як показано на рисунку.
Офіційний сайт Microsoft SDK для завантаження:https://www.microsoft.com/net/download/visual-studio-sdks
Завантажте відповідний SDK.
SDK вже включає Runtime.

2. Якщо завдання Jekins має використовувати команду Windows bat для виконання серії операцій, то використання Дженкінса «Перегляньте список доступних змінних середовища» буде корисним.
Напишіть це як «%WORKSPACE%»

3. Якщо на шляху є простір, наприклад C:\Program Files (x86)\Microsoft.NET, необхідно додати подвійні лапки з обох боків змінної.
Як:







Попередній:Дженкінс коротко представив
Наступний:Angular6 Material2 охоплює вікно повідомлень про сповіщення
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com