Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 20810|Svare: 0

[Kilde] Hvordan Jekins ruller ut et .NET Framework-prosjekt

[Kopier lenke]
Publisert på 22.11.2018 10:29:09 | | | |
Merk: I denne artikkelen er bruken av «build», «kontinuerlig build», «compile» og «generate» ikke streng, bare vit hva det betyr.

Først og fremst, hvis du vil bygge kontinuerlig, må du bruke kommandolinjen.
Men kommandoene i Dotnet Core virker å være litt enklere enn Dotnet Framework-prosjektet.
Fordi dotnetcores build-kommando erdotnet msbuild xxxxx.csproj/yyyyy.sln
Og byggekommandoen til dotnet-rammeverket er.../msbuild.exe xxxx.csproj/yyyyy.sln, og det mest forvirrende blant dem (hovedsakelig folk som aldri har falt i en grop, bare slipp den) er dettemsbuild.exeHvor er det egentlig?msbuild.exe? Tross alt, etter å ha installert dotnet framework SDK eller ulike versjoner av Visual Studio i Windows, vil det være mangemsbuild.exe, folk vet ikke hvilken de skal bruke.

La oss begynne med hvordan man bygger et dotnet-rammeverk i Windows, for å unngå at prosjektets kompleksitet påvirker hovedideen, her tror vi at vi ønsker å bygge et enkelt konsollprosjekt likt Hello World.
Oppsummert, miljøet:
Utviklingsmaskin, Windows-PC;
Publiseringsmaskin, Windows Server;
Prosjektet, et enkelt konsollprosjekt med DoNet Framework. (Jeg bruker versjon 4.5.2 her)



Det er best å initialisere et nytt prosjekt på en utviklingsmaskin med kodehåndtering som git, slik at prosjektet kan klones på andre maskiner med nettverk.
Det du skriver i prosjektet på utviklingsmaskinen, så lenge det kan kompileres. For eksempel hello world.
I tillegg anbefales det å legge til litt avhengighet av nuget-pakken i prosjektet, og velge hva du vil, som log4net-referanser.
Prøv å kompilere prosjektet på utviklingsmaskinen.
(Etter mange forsøk ble det bekreftet at kommandolinjen skulle bruke msbuild.exe C:\windows\Microsoft .NET\Framework\v4.xxx\msbuild.exe når prosjektet kompileres.) Men den spesifikke prosjekttypen er fortsatt basert på typen, velg om du vil velge Framework64 eller ikke 64, om det er v4.xxx eller 3.x, 2.x, denne betydningen er veldig enkel, hvis du ikke forstår det, vil det være hjelpeløst)
Hvis prosjektet ligger under C:\projects\test-stien, skal den kompilerte kommandoen være:

eller
Selvfølgelig kan det hende du også må ta med andre parametere som /p:Configuration=Release /p:plotform="Any CPU", avhengig av situasjonen.

4. På testmaskinen, git-klon prosjektet og prøv å kompilere prosjektet med samme kommando.
5. Hvis du ikke lykkes, må du fortsette å prøve riktig msbuild.exe, vei, parametere osv., så lenge det ikke er noe problem i miljøet, vil du definitivt lykkes.
6. Men her kommer et svært frustrerende spørsmål: Hva med nuget-avhengigheter? Nå har jeg ingen åpenbare problemer med å kompilere, men hvordan vet jeg hvor jeg finner nuget-pakken?
Dette spørsmålet har satt fast i meg lenge.
Gå til den offisielle nettsiden til NuGet og last ned nuget.exe fil.
Etter forsøk legges denne filen i prosjektet (dvs. i samme mappe som SLN- eller CSPROJ-filen) og kjøresnuget.exe restaurerekommando for å få den nødvendige nuget-pakken. Dette er opplevelsen jeg fikk etter mange forsøk)
Vel, du kan legge til en handling i skriptet og utføre kommandoen nuget.exe restore hver gang.
Det ville også vært litt mer praktisk å legge til nuget.exe i miljøvariabelen (uten forklaring) og så kjøre det hver gang.
7. Til slutt testet jeg og fant ut at prosjektet kan kompileres vellykket gjennom slike operasjoner og kommandoer på publiseringsmaskinen.
Dette er nær endelig suksess.
Faktisk, for de som forstår hva jekins er, er dette slutten på saken, og resten kan gjøres selv.

Nedenfor

1. Gå til Jekins offisielle nettside, last ned, installer, start Jekins, registrer en konto, ingen forklaring. For dotnet-prosjekter må du installere msbuild-, mstest- og mstestrunner-pluginene.

2. Jenkins global konfigurasjon msbuild.



3. Opprett et nytt prosjekt og konfigurer prosjektet



4. Bygg prosjektet.

I bunn og grunn er konstruksjonen vellykket, og det er lett å feilsøke selv om det ikke lykkes.

Faktisk, når det gjelder bruken av jekiner, lærer man mer av det selv og prøver mange ganger for å forstå.

Tillegg:

1. Hvis VS kan kompileres med suksess, men det finnes en ikke-støttet syntaksprompt i kommandolinjen.
Da kan det hende at utvikleren kompilerer med mer avanserte syntaksregler (selv om prosjektet er basert på .NET-rammeverket 4.5.2), som C# 6.0
Release-maskinen installerte kun .NET-rammeverket 4.5.2, så den støtter ikke noe av den nyeste syntaksen.
Så i dette tilfellet, installer den nyeste SDK-en på utgivelsesmaskinen.
Som vist i figuren.
Microsofts offisielle nettside SDK-nedlasting:https://www.microsoft.com/net/download/visual-studio-sdks
Last ned den tilsvarende SDK-en.
SDK-en inkluderer allerede Runtime.

2. Hvis Jekins' jobb må bruke Windows bat-kommandoen for å utføre en serie operasjoner, vil det være nyttig å bruke Jenkins' «Se til listen over tilgjengelige miljøvariabler».
Skriv det som "%WORKSPACE%"

3. Hvis det er plass i stien, slik som C:\Program Files (x86)\Microsoft.NET, det er nødvendig å legge til doble anførselstegn på begge sider av variabelen.
Som:







Foregående:Jenkins ble kort introdusert
Neste:Angular6 Material2 kapsler inn varslingsmeldingsboksen
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com