See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 23453|Vastuse: 0

[.NET tuum] [DotNeti sissejuhatus (2)]. NET Core'i kogumik ja väljaanne

[Kopeeri link]
Postitatud 21.01.2019 17:10:26 | | | |
1. NET Core käsurea liidese (CLI) tööriist
project.json aegus ja asendati see .csproj failiga, mida project.json kasutatud varajases .NET tuumas projekti konfiguratsioonifailina, ning arvatakse, et Microsoft lõpetas selle aegumise pärast probleemide avastamist, ning MSBuild kasutati endiselt .net kompileerimistööriistana.

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

Kui me teeme VS-i kompileerimist ja genereerimist, aitab VS meil lihtsalt MSBuild tööriista kutsuda, mis tähendab, et kui kompileerime .NET projekti, ei pea me VS tööriista üldse installima.

.NET Core CLI tööriista käsk on järgmine:

.NET käsurea tööriistad (2.1.301)
Kasutus: dotnet [runtime-options] [path-to application]
Kasutus: dotnet [sdk-options] [käsk] [argumendid] [käsuvalikud]

path-to-application:
  Rakenduse tee .dll käivitatav fail.

SDK käsud:
  new initsialiseerib .NET projekti.
  taasta .NET projektis määratud sõltuvused.
  käivita ja käivita .NET projekt kohe.
  build .NET projekt.
  avaldab .NET projekti juurutamiseks (sh käitusaeg).
  Testid viivad läbi ühiktestid projektis määratud testijooksjaga.
  pakkimine, et luua NuGeti pakett.
  migreerida project.json-põhiseid projekte MSBuild-põhistele projektidele.
  puhas, puhas, genereeritud väljund.
  SLN Modification Solution (SLN) fail.
  Lisa sellele viitele.
  eemaldada projektist.
  Loetle tööriistad, millele projekt viitab või paigaldab.
  NuGet pakub täiendavaid NuGet käske.
  msbuild käivitab Microsoft Build Engine'i (MSBuild).
  vstest käivitab Microsoft Test Execution käsurea tööriista.
  pood salvestab määratud assamblee käitusaegsesse salvestusse.
  tööriista paigaldamiseks või kasutamiseks, mis laiendavad .NET kogemust.
  build-server suhtleb serveriga, mille build versioon käivitab.
  Abi näitab abi.

Levinumad võimalused:
  -v|---sõnalisus määrab käsu detailsuse taseme. Lubatud väärtused on Q[UIET], M[inimaalne], N[Ormal], D[etailed] ja diag[nostic].
  -h|--abi näitab abi.

Käivita dotnet käsk --aita, et saada rohkem infot käsu kohta.

sdk-options:
  --versioon näitab kasutuses olevat .NET Core SDK versiooni.
  --info kuvab .NET Core infot.
  --list-sdks, et kuvada paigaldatud SDK.
  --list-runtimes näitab paigaldatud käitusaega.
  -d|--diagnostika võimaldab diagnostika väljundit.

runtime-options:
  --additionalprobingpath <path> Tee, mis sisaldab sondi poliitikat ja kokkupanekut sondimiseks.
  --fx-versioon <version> jagatud raamistiku installitud versioonist, mida kasutatakse rakenduse käivitamiseks.
  --roll-forward-on-no-candidate-fx "No Roll Forward to Candidate Shared Framework" on lubatud.
  --<path>lisa-DEP-id teele teiste deps.json failide juurde.

Täiendavad tööriistad ('dotnet [tool-name] --help' lisainfo jaoks):
  dev-sertifikaadid Loo ja halda arendussertifikaate.
  ef Entity Framework Core käsurea tööriistad.
  sql-cache SQL Server vahemälu käsurea tööriistad.
  kasutajasaladused Halda arenduse kasutajasaladusi.
  vaata Käivita failijälgija, mis käivitab käsu, kui failid muutuvad.

2. Koostamine ja väljaandmine


Avalda .NET projekt juurutamiseks (sh käitusaeg).
dotnet avalda


C:\project\dotnet\test1>dotnet publish --help
Kasutus: dotnet avaldamine [valikud]

Valikud:
  -h, --abi kuvab abiinfot.
  -o, --väljundit <OUTPUT_DIR> kasutatakse avaldatud üksuse väljundkataloogi paigutamiseks.
  -f, --raamistik <FRAMEWORK> Sihtraamistik, mis avaldatakse. Sihtraamistik peab olema määratletud projektidokumendis.
  -r, --<RUNTIME_IDENTIFIER>runtime avalda projekti antud jooksuajal. Kasuta seda iseseisvate juurutuste loomisel. Vaikimisi on avaldada rakendus, mis sõltub raamistikust.
  -c, --konfiguratsiooni <CONFIGURATION> kasutatakse projekti konfiguratsiooni genereerimiseks. Enamiku projektide vaikimisi väärtus on "Debug".
  --version-sufffix <VERSION_SUFFIX> määratleb sinu projektis $(VersionSuffix) omaduse väärtuse.
  --manifest <manifest.xml> Tee sihtmanifesti failini, mis sisaldab nimekirja pakettidest, mis tuleb avaldamisetapi kaudu täita.
  --ei-ehita ära ehita projekti enne avaldamist. Viitab --taastamata.
  --iseseisvad kaasnevad rakendused avaldavad .NET Core käitusaegu, kõrvaldades vajaduse käitusaega sihtmasinale paigaldada. Kui on määratud käitusaegne identifikaator, on see vaikimisi "true".
  --no-restore Ära tee käskluse täitmise ajal kaudset taastamist.
  -v, --sõnakus määrab käsu detailsuse taseme. Lubatud väärtused on Q[UIET], M[inimaalne], N[Ormal], D[etailed] ja diag[nostic].
  --no-dependencies seab selle lipu ignoreerima projektidevahelisi viiteid ja taastama ainult juurprojekti.
  --sundida kõiki sõltuvusi lahendama, isegi kui viimane taastamine on õnnestunud. See on samaväärne project.assets.json kustutamisega.
Täitmise seisukohalt võtavad CLI-käsud oma parameetrid ja konstrueerivad kutse "algsele" MSBuildile, et määrata soovitud omadused ja soovitud sihtmärk, mida käivitada. Selle paremaks illustreerimiseks vaata järgmist käsku:


See käsk avaldab rakenduse pub-kausta, kasutades Publish konfiguratsiooni. Sisemiselt tõlgitakse see käsk järgmiseks MSBuild kutseks:
Määrake oma rakenduse sihtplatvorm


Loo silt csproj faili sektsioonis (mida kasutatakse sinu rakenduse sihtplatvormi määratlemiseks) <PropertyGroup> <RuntimeIdentifiers> ja seejärel määra iga sihtplatvormi käitusaegne identifikaator (RID). Pane tähele, et RID-ide eraldamiseks on vaja ka semikoolonit. Vaata käitusaja identifikaatorite kataloogist käitusaja identifikaatorite nimekirja.
Näiteks järgmine <PropertyGroup> osa näitab, et rakendus töötab 64-bitisel Windows 10 operatsioonisüsteemil ja 64-bitisel OS X versioonil 10.11.


Kui soovime genereerida distributsiooni ainult win10 x64 platvormi all, saame täita järgmise käsu:

Väljundkaust: C:\project\dotnet\test1\bin\release\netcoreapp2.1\win10-x64\publish, kogu kaustas on 66M, mis on üsna suur, nagu alloleval joonisel näidatud:



Genereeri väljalaskepakett centos.7-x64 platvormil, seal on 70M, mis on samuti üsna suur, proovime selle centos 7-l avaldada, et see käivitada (.NET Core SDK ei ole paigaldatud CentOS 7 süsteemidesse)。

Süsteemi info on järgmine:

[root@master ~]# uname -a
Linux master 3.10.0-862.el7.x86_64 #1 SMP Reede 20. aprill 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
[root@master ~]# kass /jne/redhat-release
CentOS Linux versioon 7.6.1810 (Core)
Laadime faili ajutise kataloogi ja proovime käivitada test1 faili, mida saab normaalselt väljastada, järgmiselt:

[root@master ~]# mkdir temp
[root@master ~]# CD temp/
[root@master temperatuur]# ./test1
-bash: ./test1: Õigusi pole piisavalt
[root@master temp]# cd ..
[root@master ~]# chmod -R 777 temp/
[root@master ~]# CD temp/
[root@master temperatuur]# ./test1
Tere maailm!
[root@master temperatuur]# kaja "http://www.itsvse.com"
http://www.itsvse.com
[root@master ajutine] #


3、. NET Core Run Identifier

.NET Core RID, RID on lühend Runtime Identifierist. RID-väärtusi kasutatakse sihtplatvormi tuvastamiseks, millel rakendus töötab. .NET paketid kasutavad neid platvormispetsiifiliste varade esindamiseks NuGeti pakettides. Järgnevad väärtused on RID-i näited: linux-x64, ubuntu.14.04-x64, win7-x64 või osx.10.12-x64. Pakettide puhul, millel on natiivsed sõltuvused, määrab RID platvormi, millel paketti saab taastada.

<RuntimeIdentifier> Projektifaili elemendis saab määrata RID-i. Mitut RID-i saab defineerida <RuntimeIdentifiers> loendina (eraldatud semikoolonitega) projektifaili elementides.

RID-id, mis esindavad konkreetset operatsioonisüsteemi, järgivad tavaliselt järgmist mustrit: [os]. [versioon]-[arhitektuur]-[täiendavad täpsustajad], kus:
  • [OS] on operatsioonisüsteemi/platvormi süsteemi nimi. Näiteks Ubuntu.
  • [versioon] on operatsioonisüsteemi versioon, mis on vormindatud punktiga (.) versiooninumbriga. Näiteks 15.10. Versioonid ei tohiks olla turundusväljaanded, kuna need esindavad tavaliselt mitut eraldiseisvat operatsioonisüsteemi versiooni erinevate platvormi API lisaseadmetega.
  • [arhitektuur] on protsessori arhitektuur. Näiteks: x86, x64, arm või arm64.
  • [täiendavad täpsustused] eristavad teisi platvorme veelgi. Näiteks AOT või Corert.



Konkreetne sissejuhatus:https://docs.microsoft.com/zh-cn/dotnet/core/rid-catalog

4、. NET Core loob NuGeti pakette

.NET Standardi ja .NET Core'i puhul peaksid kõik teegid olema välja antud NuGeti pakettidena. Tegelikult avaldatakse ja kasutatakse kõiki .NET standardteeke just nii. Seda saab hõlpsasti teha dotnet pack käsu abil.



(Lõpp)




Eelmine:2019. aasta riikliku riigiteenistuse eksami videoõpetus
Järgmine:Visual Studio 2017 lisab MSDN-i
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com