Manaidsear pacaid aonachd

Tha aonachd na àrd-ùrlar a tha air a bhith timcheall airson ùine mhòr agus a tha an-còmhnaidh ag atharrachadh. Ach, nuair a bhios tu ag obair ann le grunn phròiseactan aig an aon àm, faodaidh tu fhathast a thighinn tarsainn air duilgheadasan ann a bhith a’ cleachdadh stòran cumanta (.cs), leabharlannan (.dll) agus maoin eile (ìomhaighean, fuaimean, modalan, ro-thogte). San artaigil seo bruidhnidh sinn mun eòlas againn le fuasgladh dùthchasach air a leithid de dhuilgheadas airson Unity.

Manaidsear pacaid aonachd

Dòighean Sgaoileadh Ghoireasan Co-roinnte

Tha barrachd air aon dòigh ann air goireasan co-roinnte a chleachdadh airson diofar phròiseactan, ach tha na buannachdan agus na h-eas-bhuannachdan aig gach dòigh-obrach.

1. Dùblachadh - bidh sinn a' dùblachadh ghoireasan eadar pròiseactan “le làimh”.

Pros:

  • Freagarrach airson gach seòrsa goireas.
  • Gun duilgheadasan eisimeileachd.
  • Chan eil duilgheadas sam bith ann le GUIDs so-mhaoin.

Cons:

  • Stòran mòra.
  • Chan eil cothrom ann tionndadh.
  • Duilgheadas a’ cumail sùil air atharrachaidhean air goireasan co-roinnte.
  • Duilgheadas ag ùrachadh ghoireasan co-roinnte.

2. Fo-mhodalan git - sgaoileadh ghoireasan co-roinnte tro fho-mhodalan taobh a-muigh.

Pros:

  • Faodaidh tu obrachadh leis na stòran.
  • Faodaidh tu maoin a sgaoileadh.
  • Gun duilgheadasan eisimeileachd.

Cons:

  • Eòlas Git a dhìth.
  • Chan eil Git gu math càirdeil le faidhlichean binary - feumaidh tu LFS a cheangal.
  • Smachd ruigsinneachd airson stòran.
  • Duilgheadas le dreachan ùrachadh is ìsleachadh.
  • Tha tubaistean GUID comasach agus chan eil giùlan soilleir air taobh Unity gus am fuasgladh.

3. NuGet - sgaoileadh leabharlannan co-roinnte tro phasganan NuGet.

Pros:

  • Obair ghoireasach le pròiseactan nach eil an urra ri Unity.
  • Tionndadh goireasach agus fuasgladh eisimeileachd.

Cons:

  • Chan urrainn dha Unity obrachadh le pacaidean NuGet a-mach às a’ bhogsa (air GitHub gheibh thu lorg air NuGet Package Manager for Unity, a shocraicheas seo, ach tha cuid de nuances ann).
  • Duilgheadasan ann a bhith a 'sgaoileadh seòrsaichean eile de mhaoin.

4. Manaidsear Pasgan Aonachd - sgaoileadh ghoireasan co-roinnte tro fhuasgladh dùthchasach airson Unity.

Pros:

  • Eadar-aghaidh dùthchasach airson a bhith ag obair le pacaidean.
  • Dìon an aghaidh ath-sgrìobhadh fhaidhlichean .meta ann am pasganan air sgàth còmhstri GUID.
  • Comasach air tionndadh.
  • Comas gach seòrsa goireas a sgaoileadh airson Unity.

Cons:

  • Faodaidh còmhstri GUID tachairt fhathast.
  • Chan eil sgrìobhainnean ann airson a bhuileachadh.

Tha barrachd bhuannachdan aig an dòigh mu dheireadh na eas-bhuannachdan. Ach, chan eil e mòr-chòrdte a-nis air sgàth dìth sgrìobhainnean, agus mar sin bidh sinn a 'fuireach air gu mionaideach.

Manaidsear pacaid aonachd

Tha Unity Package Manager (UPM) na inneal riaghlaidh pacaid. Chaidh a chur ris ann an Unity 2018.1 agus cha deach a chleachdadh ach airson pasganan a chaidh an leasachadh le Unity Technologies. Ach, a’ tòiseachadh le dreach 2018.3, bha e comasach pasganan àbhaisteach a chuir ris.

Manaidsear pacaid aonachd
Eadar-aghaidh Manaidsear Pacaidh Unity

Chan eil na pacaidean a’ tighinn gu crìch ann an stòran a’ phròiseict (eòlaire maoin). Tha iad ann an eòlaire air leth %projectFolder%/Library/PackageCache agus nach toir iad buaidh air a’ phròiseact ann an dòigh sam bith, tha an aon iomradh aca sa chòd stòr san fhaidhle packages/manifest.json.

Manaidsear pacaid aonachd
Pacaidean ann an siostam faidhle a’ phròiseict

Stòran pacaid

Faodaidh UPM grunn stòran pacaid a chleachdadh:

1. Siostam faidhle.

Pros:

  • Luas buileachaidh.
  • Chan eil feum air innealan treas-phàrtaidh.

Cons:

  • Duilgheadas ann an dreachdadh.
  • Tha feum air cothrom co-roinnte air an t-siostam faidhle airson a h-uile duine a tha ag obair leis a’ phròiseact.

2. Tasgaidh Git.

Pros:

  • Chan eil agad ach stòr Git.

Cons:

  • Chan urrainn dhut tionndadh eadar dreachan tro uinneag UPM.
  • Chan eil e ag obair leis a h-uile stòr Git.

3. tasgaidh npm.

Pros:

  • A’ toirt làn thaic do ghnìomhachd UPM agus air a chleachdadh gus pasganan oifigeil Unity a sgaoileadh.

Cons:

  • An-dràsta a’ seachnadh a h-uile tionndadh sreang de phasgan ach a-mhàin “-preview”.

Gu h-ìosal bheir sinn sùil air buileachadh UPM + npm. Tha am pasgan seo goireasach oir leigidh e leat obrachadh le seòrsa sam bith de ghoireas agus dreachan pacaid a riaghladh, agus cuideachd a’ toirt làn thaic don eadar-aghaidh dùthchasach UPM.

Faodaidh tu a chleachdadh mar stòr npm Verdaccio. Tha mion-fhiosrachadh ann na sgrìobhainnean, agus chan eil ach òrdugh no dhà a dhìth airson a ruith.

A 'suidheachadh na h-àrainneachd

An toiseach feumaidh tu a stàladh node.js.

A 'cruthachadh pasgan

Gus pasgan a chruthachadh, feumaidh tu am faidhle a chuir package.json, a bheir cunntas air, don eòlaire le susbaint a’ phacaid seo. Feumaidh tu na leanas a dhèanamh:

Rach don eòlaire pròiseict a tha sinn airson pasgan a dhèanamh.

Ruith an àithne npm init agus cuir a-steach na luachan riatanach tron ​​​​chòmhradh. Airson ainm, sònraich an t-ainm ann an cruth àrainn cùil, mar eisimpleir com.plarium.somepackage.
Gus ainm a’ phacaid a thaisbeanadh gu goireasach, cuir seilbh displayName ri package.json agus lìon e.

Leis gu bheil npm stèidhichte air js, tha na prìomh fheartan agus na feartan sgriobtaichean anns an fhaidhle nach eil a dhìth oirnn, nach bi Unity a’ cleachdadh. Tha e nas fheàrr an toirt air falbh gus nach cuir thu dragh air tuairisgeul a’ phacaid. Bu chòir gum biodh am faidhle a’ coimhead rudeigin mar seo:

  1. Rach don eòlaire pròiseict a tha sinn airson pasgan a dhèanamh.
  2. Ruith an àithne npm init agus cuir a-steach na luachan riatanach tron ​​​​chòmhradh. Airson ainm, sònraich an t-ainm ann an cruth àrainn cùil, mar eisimpleir com.plarium.somepackage.
  3. Gus ainm a’ phacaid a thaisbeanadh gu goireasach, cuir seilbh displayName ri package.json agus lìon e.
  4. Leis gu bheil npm stèidhichte air js, tha na prìomh fheartan agus na feartan sgriobtaichean anns an fhaidhle nach eil a dhìth oirnn, nach bi Unity a’ cleachdadh. Tha e nas fheàrr an toirt air falbh gus nach cuir thu dragh air tuairisgeul a’ phacaid. Bu chòir gum biodh am faidhle a’ coimhead rudeigin mar seo:
    {
     "name": "com.plarium.somepackage",
     "displayName": "Some Package",
     "version": "1.0.0",
     "description": "Some Package Description",
     "keywords": [
       "Unity",
       "UPM"
     ],
     "author": "AUTHOR",
     "license": "UNLICENSED"
    }

  5. Fosgail Unity agus cruthaich faidhle .meta airson pack.json (chan fhaic Unity maoin às aonais faidhlichean .meta, tha pacaidean airson Unity air am fosgladh ri leughadh a-mhàin).

A 'cur pasgan

Gus am pasgan a chuir a-steach feumaidh tu an àithne a ruith: npm publish --registry *адрес до хранилища пакетов*.

A’ stàladh agus ag ùrachadh phasganan tro Unity Package Manager

Gus pasgan a chur ri pròiseact Unity, feumaidh tu:

  1. Cuir ris an fhaidhle manifest.json fiosrachadh mu thùs nam pacaidean. Gus seo a dhèanamh feumaidh tu an t-seilbh a chur ris scopedRegistries agus comharraich na scopes agus an seòladh tùsail far an tèid raointean sònraichte a sgrùdadh.
    
    "scopedRegistries": [
       {
         "name": "Main",
         "url": "адрес до хранилища пакетов",
         "scopes": [
           "com.plarium"
         ]
       }
     ]
    
  2. Rach gu Unity agus fosgail an uinneag Manaidsear Pacaid (chan eil a bhith ag obair le pasganan àbhaisteach eadar-dhealaichte bho bhith ag obair le feadhainn togte).
  3. Tagh a h-uile pasgan.
  4. Lorg am pasgan a tha a dhìth ort agus cuir ris.

Manaidsear pacaid aonachd

Ag obair le stòran agus debugging

Gus am bi na stòran ceangailte ris a 'phròiseact, feumaidh tu a chruthachadh Mìneachadh Seanadh airson a' phacaid.

Cha bhith cleachdadh pacaidean a’ cuingealachadh na roghainnean deasbaid agad. Ach, nuair a bhios tu ag obair le pacaidean ann an Unity, chan urrainn dhut a dhol chun IDE le bhith a’ cliogadh air mearachd sa chonsail ma thachair a’ mhearachd sa phacaid. Tha seo air sgàth nach eil Unity a’ faicinn sgriobtaichean mar fhaidhlichean air leth, oir nuair a bhios iad a’ cleachdadh Mìneachadh an t-Seanaidh tha iad air an cruinneachadh a-steach do leabharlann agus air an toirt a-steach don phròiseact. Nuair a bhios tu ag obair le stòran bho phròiseact, tha cliogadh chun an IDE ri fhaighinn.

Sgriobt ann am pròiseact le pasgan ceangailte:

Manaidsear pacaid aonachd
Sgriobt bhon phacaid le briseadh obrach:

Manaidsear pacaid aonachd

Ceartachaidhean èiginneach air pacaidean

Tha pacaidean aonachd air an cur ri pròiseact ri leughadh a-mhàin, ach faodar an deasachadh ann an tasgadan a’ phacaid. Gus seo a dhèanamh feumaidh tu:

  1. Rach don phacaid ann an tasgadan pacaid.

    Manaidsear pacaid aonachd

  2. Dèan na h-atharrachaidhean riatanach.
  3. Ùraich an tionndadh san fhaidhle package.json.
  4. Cuir pasgan npm publish --registry *адрес до хранилища пакетов*.
  5. Ùraich an tionndadh pacaid chun fhear ceartaichte tron ​​​​eadar-aghaidh UPM.

Còmhstri in-mhalairt pacaid

Faodaidh na còmhstri GUID a leanas tachairt nuair a thathar a’ toirt a-steach pacaidean:

  1. Pasgan - pasgan. Ma lorgar, nuair a thathar a’ toirt a-steach pasgan, gu bheil maoin leis an aon GUID ann am pasganan a chaidh a chur ris mar-thà, cha tèid maoin le GUIDan co-ionnan bhon phasgan a chaidh a thoirt a-steach a chur ris a’ phròiseact.
  2. Is e pròiseact a th’ ann am pasgan. Ma lorgar, nuair a thathar a’ toirt a-steach pasgan, gu bheil maoin anns a’ phròiseact le GUIDan co-ionnan, cha tèid maoin a’ phacaid a chur ris a’ phròiseact. Ach, tòisichidh maoin a tha an urra riutha a 'cleachdadh so-mhaoin bhon phròiseact.

A’ gluasad maoin bho phròiseact gu pasgan

Ma ghluaiseas tu maoin bho phròiseact gu pasgan fhad ‘s a tha Unity fosgailte, thèid a ghnìomhachd a ghleidheadh, agus tòisichidh ceanglaichean ann am maoin eisimeileach a’ cleachdadh so-mhaoin bhon phacaid.

Cudromach: Nuair a bhios tu a’ dèanamh lethbhreac de mhaoin bho phròiseact gu pasgan, bidh an còmhstri “Pasgan - Pròiseact” a tha air a mhìneachadh san earrann gu h-àrd a’ tachairt.

Fuasglaidhean a dh’ fhaodadh a bhith ann airson còmhstri

  1. Ag ath-shònrachadh GUIDs a’ cleachdadh na h-algorithms againn fhìn nuair a thathar a’ toirt a-steach a h-uile maoin gus cuir às do thubaistean.
  2. A’ cur a’ mhaoin gu lèir ri aon phròiseact agus an uairsin gan roinn ann am pasganan.
  3. A’ cruthachadh stòr-dàta anns a bheil GUIDs de gach maoin agus a’ dèanamh dearbhadh nuair a thathar a’ cur phasganan.

co-dhùnadh

Tha UPM na fhuasgladh ùr airson a bhith a’ sgaoileadh ghoireasan co-roinnte ann an Unity, a dh’ fhaodadh a bhith na roghainn eile an àite nan dòighean a th’ ann mar-thà. Bha na molaidhean a chaidh a mhìneachadh san artaigil stèidhichte air fìor chùisean. Tha sinn an dòchas gum bi iad feumail dhut.

Source: www.habr.com

Cuir beachd ann