Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 23453|Vastaus: 0

[.NET Core] [DotNetin johdanto (2)]. NET Core -kokoelma ja julkaisu

[Kopioi linkki]
Julkaistu 21.1.2019 17.10.26 | | | |
1. NET Core -komentorivikäyttöliittymä (CLI) -työkalu
project.json poistettiin käytöstä ja korvattiin .csproj-tiedostolla, jota project.json käytetty projektin konfiguraatiotiedostona varhaisessa .NET-ytimessä, ja arvioidaan, että Microsoft poisti sen käytöstä löydettyään ongelmia, ja MSBuildia käytettiin edelleen .net-käännöstyökaluna.

MSBuild esittelee:https://docs.microsoft.com/zh-cn ... sbuild?view=vs-2017

Kun teemme VS:n kääntämisen ja generoinnin, VS auttaa meitä kutsumaan MSBuild-työkalun, mikä tarkoittaa, että kun käännämme .NET-projektin, meidän ei tarvitse asentaa VS-työkalua lainkaan.

.NET Core CLI -työkalukomento on seuraava:

.NET komentorivityökalut (2.1.301)
Käyttö: dotnet [ajonaikaiset asetukset] [polku sovellukseen]
Käyttö: dotnet [sdk-options] [komento] [argumentit] [command-options]

path-to-application:
  Polku sovellukseen .dll suoritettava tiedosto.

SDK-komennot:
  new käynnistää .NET-projektin.
  palauttaa .NET-projektissa määritellyt riippuvuudet.
  ajaa ja suorita .NET-projekti välittömästi.
  build .NET-projekti.
  publish julkaisee .NET-projektin käyttöönottoa varten (mukaan lukien ajonaikainen).
  Testaus suorittaa yksikkötestejä projektissa määritellyn testin suorittajan avulla.
  pakkaa NuGet-paketin luomiseksi.
  siirtää project.json-pohjaiset projektit MSBuild-pohjaisiin projekteihin.
  puhdas, puhdas, tuotettu tulos.
  SLN-muokkausratkaisu (SLN) -tiedosto.
  Lisää viittaukseen.
  Poista projektista.
  Listaa työkalut, joihin projekti viittaa tai asentaa.
  NuGet tarjoaa lisäkomentoja.
  msbuild käyttää Microsoft Build Engineä (MSBuild).
  vstest suorittaa Microsoft Test Execution -komentorivityökalun.
  Store tallentaa määritellyn kokoonpanon ajonaikaiseen varastoon.
  työkalu asentaa tai käyttää työkaluja, jotka laajentavat .NET-kokemusta.
  build-server on vuorovaikutuksessa palvelimen kanssa, jonka build-versio käynnistää.
  Apu osoittaa apua.

Yleiset vaihtoehdot:
  -v|--puhe määrittää komennon yksityiskohtien tason. Sallitut arvot ovat Q[UIET], M[inimal], N[Ormal], D[etailed] ja diag[nostic].
  -h|--apu näyttää apua.

Suorita dotnet-komento – apua saadaksesi lisätietoja komennosta.

sdk-options:
  --versio näyttää käytössä olevan .NET Core SDK -version.
  --info näyttää .NET Core -tiedot.
  --list-sdks näyttääkseen asennetun SDK:n.
  --list-runtimes näyttää asennetun ajonajan.
  -d|--diagnostiikka mahdollistaa diagnostisen tuloksen.

runtime-options:
  --additionalprobingpath <path> Polku, joka sisältää koettimen politiikan ja kokouksen tutkintaan.
  --fx-versio <version> jaetun kehyksen asennetusta versiosta, jota käytetään sovelluksen ajamiseen.
  --roll-forward-on-no-candidate-fx "No Roll Forward to Candidate Shared Framework" on käytössä.
  --lisä-DEP <path> :t polulle muihin deps.json tiedostoihin.

Lisätyökalut ('dotnet [tool-name] --help' lisätietoja varten):
  dev-sertifikaatit Luo ja hallinnoi kehityssertifikaatteja.
  ef Entity Framework Core komentorivityökalut.
  sql-cache SQL Server välimuistikomentorivityökalut.
  käyttäjäsalaisuudet Hallinnoi kehityksen käyttäjäsalaisuuksia.
  katso Käynnistä tiedostonvalvoja, joka suorittaa komennon, kun tiedostot muuttuvat.

2. Kokoelma ja julkaisu


Julkaise .NET-projekti käyttöönottoa varten (mukaan lukien ajonaika).
dotnet publish


C:\project\dotnet\test1>dotnet publish --help
Käyttö: dotnet publish [vaihtoehdot]

Vaihtoehdot:
  -h, --ohje näyttää aputiedot.
  -o, --output <OUTPUT_DIR> käytetään julkaistun kohteen ulostulohakemiston sijoittamiseen.
  -f, --<FRAMEWORK>kehys Julkaistava kohdekehys. Kohdekehys on määriteltävä projektidokumentissa.
  -r, --<RUNTIME_IDENTIFIER>runtime julkaise projektin tietylle ajonajalle. Käytä tätä luodessasi itsenäisiä käyttöönottoja. Oletustoiminto on julkaista sovellus, joka riippuu kehyksestä.
  -c, --konfiguraatiota käytetään <CONFIGURATION> projektin konfiguraatioiden generointiin. Useimpien projektien oletusarvo on "Debug".
  --version-sufffix <VERSION_SUFFIX> määrittelee $(VersionSuffix)-ominaisuuden arvon projektissasi.
  --manifest <manifest.xml> Polku kohdemanifestitiedostoon, joka sisältää listan paketeista, jotka suoritetaan julkaisuvaiheen kautta.
  --ei-rakenna Älä rakenna projektia ennen julkaisua. Vihjaa --ei palautusta.
  --itsenäiset mukana olevat sovellukset julkaisevat .NET Core -ajonaikaa, jolloin ajonaikainen asennus kohdekoneelle ei tarvitse asentaa. Jos ajon aikainen tunniste on määritelty, se oletuksena on "true".
  --ei-palautus Älä suorita implisiittistä palautusta komentoa suorittaessaan.
  -v, --puhe määrittää käskyn yksityiskohtien tason. Sallitut arvot ovat Q[UIET], M[inimal], N[Ormal], D[etailed] ja diag[nostic].
  --no-dependencies asettaa tämän lipun sivuuttamaan projektien väliset viittaukset ja palauttamaan vain juuriprojektin.
  --pakottaa kaikki riippuvuudet ratkaistaviksi, vaikka viimeinen palautus olisi onnistunut. Tämä vastaa project.assets.json poistamista.
Suorituksen näkökulmasta CLI-komennot ottavat parametrinsa ja rakentavat kutsun "alkuperäiselle" MSBuildille asettaakseen halutut ominaisuudet ja halutun kohteen suoritettavaksi. Havainnollistaaksesi tätä paremmin, katso seuraava komento:


Tämä komento julkaisee sovelluksen pub-kansioon Julkaise-konfiguraatiolla. Sisäisesti tämä komento tarkoittaa seuraavaa MSBuild-kutsua:
Määrittele sovelluksesi kohdealusta


Luo tunniste cspró-tiedoston osioon (jota käytetään sovelluksen kohdealustan määrittämiseen) <PropertyGroup> <RuntimeIdentifiers> ja määritä sitten ajonaikainen tunniste (RID) jokaiselle kohdealustalle. Huomaa, että RID:ien erottamiseen tarvitaan myös puolipisteitä. Tarkista Runtime Identifier Catalogista lista ajonaikaisista tunnisteista.
Esimerkiksi seuraava <PropertyGroup> osio osoittaa, että sovellus toimii 64-bittisellä Windows 10 -käyttöjärjestelmällä ja 64-bittisellä OS X -versiolla 10.11.


Jos haluamme generoida jakelun vain win10 x64 -alustan alapuolella, voimme suorittaa seuraavan komennon:

Tulostuskansio: C:\project\dotnet\test1\bin\release\netcoreapp2.1\win10-x64\publish, koko kansiossa on 66M, mikä on melko suuri, kuten alla olevassa kuvassa näkyy:



Luo julkaisupaketti centos.7-x64-alustalla, siinä on 70M, joka on myös melko suuri, yritetään julkaista se centos 7:llä suorittaaksemme sen (.NET Core SDK ei ole asennettu CentOS 7 -järjestelmiin)。

Järjestelmän tiedot ovat seuraavat:

[root@master ~]# uname -a
Linux master 3.10.0-862.el7.x86_64 #1 SMP Pe 20. huhtikuuta 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@master ~]# kissa /etc/redhat-release
CentOS Linux -versio 7.6.1810 (Core)
Lataamme tiedoston väliaikaiseen hakemistoon ja yritämme suorittaa test1-tiedoston, joka voidaan tuottaa normaalisti seuraavasti:

[root@master ~]# mkdir temp
[root@master ~]# cd temp/
[root@master lämpötila]# ./testi1
-bash: ./test1: Käyttöoikeuksia ei ole tarpeeksi
[root@master temp]# cd ..
[root@master ~]# chmod -R 777 temp/
[root@master ~]# cd temp/
[root@master lämpötila]# ./testi1
Moi maailma!
[root@master temp]# kaiku "http://www.itsvse.com"
http://www.itsvse.com
[root@master lämpötila] #


3、. NET Core Run -tunniste

.NET Core RID, RID on lyhenne sanoista Runtime Identifier. RID-arvoja käytetään tunnistamaan kohdealusta, jolla sovellus toimii. .NET-paketit käyttävät niitä edustamaan alustakohtaisia assetteja NuGet-paketeissa. Seuraavat arvot ovat esimerkkejä RID:stä: linux-x64, ubuntu.14.04-x64, win7-x64 tai osx.10.12-x64. Paketeille, joilla on natiiviriippuvuuksia, RID määrittää alustan, jolla paketti voidaan palauttaa.

<RuntimeIdentifier> Voit asettaa RID:n projektitiedoston elementtiin. Useita RID:iä voidaan määritellä <RuntimeIdentifiers> listana (erotettu puolipisteillä) projektitiedoston elementeissä.

RID:t, jotka edustavat tiettyä käyttöjärjestelmää, noudattavat tyypillisesti seuraavaa kaavaa: [os]. [versio]-[arkkitehtuuri]-[lisämääritykset], missä:
  • [os] on käyttöjärjestelmän/alustan järjestelmän nimi. Esimerkiksi Ubuntu.
  • [versio] on käyttöjärjestelmäversio, joka on muotoiltu pisteellä (.) versionumerolla. Esimerkiksi 15.10. Versioiden ei tulisi olla markkinointijulkaisuja, sillä ne edustavat tyypillisesti useita erillisiä käyttöjärjestelmän versioita eri alustan API-oheislaitteilla.
  • [arkkitehtuuri] on prosessorin arkkitehtuuri. Esimerkiksi: x86, x64, arm tai arm64.
  • [lisätarkennukset] erottavat eri alustot entisestään. Esimerkiksi AOT tai Corert.



Tarkempi johdanto:https://docs.microsoft.com/zh-cn/dotnet/core/rid-catalog

4、. NET Core luo NuGet-paketteja

.NET Standardin ja .NET Coren kohdalla kaikki kirjastot tulisi julkaista NuGet-paketteina. Itse asiassa näin kaikki .NET-standardikirjastot julkaistaan ja käytetään. Tämä onnistuu helposti dotnet pack -komennolla.



(Loppu)




Edellinen:2019 Kansallinen virkamieskokeen videotutoriali
Seuraava:Visual Studio 2017 lisää MSDN:n
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com