Efa manana ny logiciel anao ianao, saingy mbola mila fomba mahomby kokoa ahafahanao manitatra ny sehatra ireo mpampiasa teknika anao.
Na dia fantatry ny ankamaroan'ny mpamorona Java aza ny OSGi, ny fampidirana azy amin'ny vokatrao dia mety ho toa asa sarotra. Ny tsy fahampian'ny mazava momba ny fiasan'ny OSGi dia vao mainka manakorontana ny lalana mankany.
Mifanohitra amin'izay rehetra tian'izy ireo hanandrana, ny OSGi dia mahatsapa kokoa ny manandrana mamakivaky ny ranomasina midadasika mankany amin'ireo mpamorona Java maro.
Ity lahatsoratra ity dia hampahafantatra anao ny OSGi Felix lohataona tutorial amin'ny fampiasana programa mahitsy ary mandalo, ny tombony ary ny antsipiriany manan-danja hafa.
Inona ary ny OSGi?
Ny famoronana sy fizarana mody sy singa dia azo atao amin'ny alàlan'ny rafitra Java fantatra amin'ny anarana hoe OSGi (Open Service Gateway Initiative).
Izy io dia manantitrantitra ny encapsulation fampiasa sy ny fifandraisana malalaka, izay manome tombony maro ho an'ny mpamorona, ao anatin'izany ny fampandehanana modular izay mora afindra eo anelanelan'ny kaody loharano sy ny fitsapana izay tsy mila fiankinan-doha tsy misy farany.
Ahoana ny fiasan'ny OSGi?
Ny rafitra singa mavitrika ho an'ny Java dia voafaritra amin'ny alàlan'ny fepetra voafaritra antsoina hoe OSGi. Ireo fepetra ireo dia manome fomba fiasa fampandrosoana izay amboarina avy amin'ny ampahany maromaro ny fampiharana iray ary avy eo atambatra ao anaty fonosana.
Ny serivisy eo an-toerana sy mifototra amin'ny tambajotra dia ampiasain'ireo singa ireo hifandraisana. Ny fanaovana ny kaody fototra amin'ny programa ho mirindra araka izay azo atao no tanjona. Azo atao ny mampifandray an'io kaody io sy singa maromaro.
Ireo singa fanorenana azo ampiasaina indray dia antsoina hoe singa. Eritrereto ny endri-javatra toy ny sarety fiantsenana ho an'ny tranokalanao e-varotra na fampiharana karama ho an'ny rafi-pitantanan'ny mpiasanao.
Ny singa dia afaka mampiasa OSGi hanafina ny fampiharana azy amin'ny singa hafa ary manome ny angona ilaina amin'izy ireo amin'ny alàlan'ny serivisy ihany.
Izany dia manakana ny singa tsy hanova ny angona tsy tokony ho azon'izy ireo idirana sy hitantana ny fiankinan-doha.
Ny fifandraisana rehetra eo amin'ny singa ao amin'ny rindranasa OSGi dia atao amin'ny alàlan'ny serivisy amin'ny tontolo tena tsara. Ny fonosana Java dia misy ny API izay voafaritra ho an'ny serivisy.
Ny fiaraha-miasa eo amin'ny mpanome tolotra sy ny mpanjifa dia mitaky ny fampiasana kilasy sy/na fifandraisana, izay mandrafitra ny API.
Ny singa OSGi rehetra dia mitambatra ao anaty fonosana, izay ahitana ny loharanon-karena ilainy amin'ny asany. Ny bundles dia mazava tsara momba ny zavatra ilainy avy amin'ny tontolo iainana sy ny zavatra vitany.
soa
- Ny fampiharana OSGi dia manana fahafahana miditra amin'ny fitehirizana fonosana ivelany.
- Ny rafitra dia mamela ny famolavolana miompana amin'ny serivisy amin'ny ambaratonga module.
- Izy io dia ahafahana mitantana ny dikan-teny sy ny fiankinan'ny amboara fampiharana ankoatra ny manara-penitra sy manamora ny fampidirana tranomboky an'ny antoko fahatelo.
- Ny fampiharana dia azo ampifanarahana kokoa amin'ny fanovana fitakiana, azo entina kokoa ary haingana kokoa amin'ny fanavaozana.
- A fampiharana amin'ny tranonkala dia azo apetraka ho vondron'ireo fehezam-boninkazo OSGi misy dikan-teny miaraka amin'ny fiainana mavitrika noho ny fampidirana ny rafitra miaraka amin'ny modely fandaharana Java EE.
- Raha tokony hapetraka ho tranomboky an'ny antoko fahatelo ao anatin'ny rindranasa, ny rafitra dia manome ny fivorian'ny fanambarana sy ny fitsapam-pitantanana ny tarika Lohataona amin'ny endrika manara-penitra izay omena ho ampahany amin'ny fotoam-pizarana ny mpizara fampiharana.
- Ho an'ny rindranasa orinasa voaforon'ny amboara misy dikan-teny maromaro miaraka amin'ny tsingerin'ny fiainana mavitrika, ny rafitra dia manolotra fitokanana.
- Izy io dia misy tahirim-pamokarana mitambatra izay afaka mitahiry fehezam-boninkazo iraisana sy voavolavola ampiasain'ny rindranasa maromaro, manakana ny fampiharana tsirairay tsy hametraka dika mitovy amin'ny tranomboky ifampizarana tsirairay.
Manomboka amin'ny lohataona OSGi Felix
Mahazo ny loharanon-karena
Amin'ny alàlan'ny fampidinana ny kinova farany an'i Apache Karaf avy amin'ny ity tranonkala ity, afaka manomboka ny fitsangatsanganana OSGi isika.
Miorina amin'ny Apache Felix, ny fampiharana Apache amin'ny famaritana OSGi, Apache Karaf dia manome sehatra ho an'ny fampiharana mifototra amin'ny OSGi.
Karaf dia manome endri-javatra mahasoa isan-karazany eo an-tampon'i Felix izay hanampy antsika amin'ny fahafantarana ny tenantsika amin'ny OSGi, toy ny interface tsara andalana izay ahafahantsika mifandray amin'ny sehatra.
Toerana fidirana ho an'ny fonosana
Ny rindranasa iray dia tsy maintsy amboarina ho fehezam-boninkazo OSGi vao azo ampiasaina amin'ny tontolo OSGi. Fanampin'izany, tsy maintsy voafaritra ny toerana fidirana amin'ny fampiharana; tsy ny static public void main(String[] args) .
Koa andao hanomboka amin'ny famoronana "Bonjour Monde” fampiharana mifototra amin'ny OSGi.
Manomboka amin'ny fametrahana fiankinan-doha OSGi API fototra isika:
Ny fotoana fiasan'ny OSGi dia hanana fahafahana miditra amin'ny fiankinan-doha, noho izany dia tsy mila mitahiry azy io ny fonosana. Noho izany dia voamarika ho nomena.
Andeha isika hamorona ny kilasy HelloWorld tsotra:
Ireo kilasy izay miasa ho teboka fidirana amin'ny fonosana dia tsy maintsy mampihatra ny interface tsara BundleActivator omen'ny OSGi.
Rehefa natomboka ny fonosana misy an'io kilasy io, ny sehatra OSGi dia miantso ny asa fanombohana (). Amin'ny lafiny iray, fotoana fohy alohan'ny hampitsaharana ny fehezam-boninkazo, dia antsoina ny fiatoana ().
Aza adino fa ny bundle tsirairay dia afaka manana BundleActivator iray ihany. Ny fomba roa dia afaka mifandray amin'ny OSGi runtime amin'ny fampiasana ny zavatra BundleContext izay omena.
Mamorona Bundle
Ataovy tena OSGi ny pom.xml amin'ny fanaovana ny fanovana ilaina.
Tsy maintsy manambara mazava tsara aloha isika fa ny hamokatra amboara no tanjontsika.
Avy eo, mampiasa ny maven-bundle-plugin izahay mba hametahana ny kilasin'i HelloWorld ho fehezam-boninkazo OSGi, avy amin'ny vondrom-piarahamonina Apache Felix:
Ny sandan'ny lohatenin'ny OSGi izay tiantsika ampidirina ao amin'ny rakitra MANIFEST an'ny bundle dia voafaritra ao amin'ny fizarana toromarika.
Ny Bundle-Activator dia tena anarana mahafeno fepetra amin'ny vahaolana BundleActivator izay hampiasaina hanombohana sy hampitsahatra ny fonosana. Mifanaraka amin'ny kilasy vao noforonina izy io.
Na dia tsy lohatenin'ny OSGi aza izy io, ny lohatenin'ny Private-Package dia manome toromarika ny plugin mba hampiditra ilay fonosana ao anaty fonosana fa tsy hahatonga azy ho azon'ny plugins hafa. Ny baiko mvn install dia tokony hampiasaina hamoronana ny bundle.
Fametrahana sy fampandehanana ny Bundle
Andao hanomboka an'i Karaf amin'ny fampandehanana ity baiko ity:
izay ny “KARAF HOME” dia manondro ny lahatahiry nananganana an'i Karaf. Azontsika ampiasaina ity baiko manaraka ity mba hametrahana ilay fehezam-boninkazo rehefa miseho ny bitsika Karaf console:
Ny fampiasana ny tahiry Maven eo an-toerana dia ny fomba ilazana an'i Karaf hampiditra ny fonosana.
Naverin'i Karaf ny karapanondro nomerika an'ilay amboara. Ity ID ity dia mety tsy mitovy arakaraka ny isan'ny fehezam-boninkazo napetraka teo aloha. Efa tafapetraka soa aman-tsara izao ny fehezam-boninkazo, ary toy izao ny baiko hanombohana azy:
Raha vao manomboka ny fonosana ianao dia miseho ny "Hello World by Jay". Afaka manajanona sy manala ny amboara isika izao amin'ny fampiasana:
Ny console dia mampiseho ny "Goodbye World by Jay."
Famaranana
Ny mpamorona dia afaka manampy mora foana fampiasa vaovao amin'ny rindranasa an-tranonkala efa misy nefa mitazona azy ho azo antoka sy mitoka-monina amin'ireo singa hafa amin'ny programa lehibe amin'ny fampiasana OSGi.
Nianatra momba ny OSGi izahay ato amin'ity lahatsoratra ity, anisan'izany ny fomba fiasany, ny tombony azony, ary ny programa mahitsy. Tsy sarotra ny mampiditra OSGi amin'ny fampiharana anao manokana.
Faly coding!
Leave a Reply