Kei a koe tonu to rorohiko, engari kei te hiahia tonu koe ki tetahi tikanga whai hua ake kia taea ai e nga kaiwhakamahi hangarau te whakawhanui i te turanga.
Ahakoa e mohiotia ana te OSGi ki te nuinga o nga kaiwhakawhanake Java, ko te whakauru ki roto i to hua he ahua uaua. Ko te kore maramatanga mo nga mahi tika a OSGi ka whakararuraru i te huarahi whakamua.
He rereke ki nga mea katoa e hiahia ana ratou ki te whakamatautau, he rite te ahua o OSGi ki te ngana ki te whakatere i te moana whanui ki te maha o nga kaihanga Java.
Ma tenei tuhinga e whakaatu ki a koe te akoranga puna OSGi Felix ma te whakamahi i te kaupapa tika me te haere, ona painga, me etahi atu korero nui.
Na he aha te OSGi?
Ko te hanga me te tohatoha i nga waahanga me nga waahanga ka taea e te anga Java e mohiotia ana ko OSGi (Open Service Gateway Initiative).
Ka whakanuia e ia te whakaurunga mahi me te whakakotahitanga wetewete, he maha nga painga ki nga kaihanga, tae atu ki nga taumahinga ngawari ka taea te whakawhiti i waenga i nga waehere puna me nga whakamatautau kaore e hiahiatia he whakawhirinaki mutungakore.
Me pehea te mahi a OSGi?
Ko te punaha waahanga hihiri mo Java ka tautuhia e te huinga o nga whakaritenga e kiia nei ko OSGi. Ka taea e enei tohu te huarahi whanaketanga ka hangaia he tono mai i te maha o nga waahanga katahi ka kohia hei paihere.
Ko nga ratonga a-rohe me te whatunga ka whakamahia e enei waahanga ki te whakawhitiwhiti korero. Ko te hanga i te waehere matua o te hotaka kia rite ki te mea ka taea te kaupapa. Ka taea te hono teitei i waenga i tenei waehere me etahi waahanga.
Ko nga huānga whare ka taea te whakamahi ano ka kiia ko nga waahanga. Whakaarohia nga ahuatanga penei i te kaata hokohoko mo to paetukutuku e-hokohoko, he tono utu mo to punaha whakahaere kaimahi.
Ka taea e nga waahanga te whakamahi i te OSGi ki te huna i o raatau whakatinanatanga mai i etahi atu waahanga me te whakarato i nga raraunga e tika ana ki a raatau ma nga ratonga.
Ma tenei ka aukati i nga waahanga mai i te whakarereke pohehe i nga raraunga kaore e tika kia uru atu me te whakahaere i nga whakawhirinakitanga.
Ko nga hononga katoa i waenga i nga waahanga o te tono OSGi ka mahia ma nga ratonga i roto i te ao pai. Kei roto i tetahi kete Java te API kua tohua mo nga ratonga.
Ko te mahi tahi i waenga i nga kaiwhakarato ratonga me nga kaihoko me whakamahi nga karaehe me nga hononga, e hanga ana i te API.
Ko nga waahanga OSGi katoa kua whakahiatohia ki roto i nga paihere, kei roto i ia waahanga nga rauemi e hiahiatia ana hei mahi. He tino marama nga paihere mo o raatau hiahia mai i te taiao me o raatau kaha.
painga
- Ka whai waahi nga tono OSGi ki nga putunga putunga o waho.
- Ka taea e te angamahi te hoahoa i runga i te ratonga ki te taumata o te waahanga.
- Ka taea te whakahaere i nga putanga me nga whakawhirinakitanga o nga paihere tono i tua atu i te whakataurite me te ngawari ki te whakauru i nga whare pukapuka tuatoru.
- He pai ake nga tono ki te whakarereke i nga tono, he pai ake te kawe, me te tere ki te hanga hou.
- A tono tukutuku Ka taea te tuku hei roopu o nga paihere OSGi kua oti te whakaputa me te oranga hihiri na te whakaurunga o te anga ki te tauira kaupapa Java EE.
- Engari kaua e whakaurua hei whare pukapuka tuatoru hei waahanga o te tono, ka whakaratohia e te anga te huihuinga whakapuakanga me te whakamohiotanga o nga whakamatautau wae o te Anga Puna i roto i te ahua paerewa e whakaratohia ana hei waahanga o te wa whakahaere o te tūmau tono.
- Mo nga tono rangatōpū he maha nga paihere kua oti te whakaputa me nga huringa ora hihiri, ka tuku te anga ki te wehe.
- Kei roto he putunga paihere whakauru ka taea te penapena i nga paihere tiritiri noa me nga putunga kua whakamahia e te maha o nga tono, hei aukati i ia tono ki te tuku kape motuhake o ia whare pukapuka tiritahi.
Te tiimata me te puna OSGi Felix
Tikina nga Rauemi
Ma te tango i te putanga hou a Apache Karaf mai i tenei pae, ka taea e tatou te timata i to maatau OSGi.
I runga i a Apache Felix, te whakatinanatanga a Apache o te whakaritenga OSGi, ka whakaratohia e Apache Karaf he papa mo nga tono a OSGi.
Ka whakarato a Karaf i nga ahuatanga awhina i runga ake o Felix hei awhina i a maatau ki te mohio ki a OSGi, penei i te atanga raina whakahau e taea ai e tatou te korero ki te papaaho.
Tohu Whakauru Mo nga Paihere
Me takai he tono hei paihere OSGi i mua i te whakahaerenga ki tetahi taiao OSGi. I tua atu, me tohu te waahi whakauru tono; ehara i te mea ko te mahi matua kore noa (String[] args) te mahi.
Na me timata ma te hanga "Kia Ora” tono i runga i te OSGi.
Ka timata tatou ma te whakatu i tetahi OSGi API whakawhirinaki:
Ka whai waahi te wa whakahaere OSGi ki te ti'aturi, no reira karekau te paihere kia mau. Na reira, kua tohua kua tukuna.
Inaianei me hanga e tatou te karaehe HelloWorld tika:
Ko nga karaehe hei whakaurunga mo nga paihere me whakauru i te atanga BundleActivator i whakaratohia e OSGi.
Ina whakarewahia te paihere kei roto tenei karaehe, ka karangahia e te papaaho OSGi te mahi tiimata(). I tera taha, i mua tata i te wa e whakamutua ai te paihere, ka karangahia te aukati mahi.
Kaua e wareware ka taea e ia paihere kotahi anake te BundleActivator. Ka taea e nga huarahi e rua te korero ki te wa whakahaere OSGi ma te whakamahi i te ahanoa BundleContext kua hoatu.
Te hanga paihere
Hangaia te pom.xml he paihere OSGi pono ma te mahi i nga huringa e tika ana.
I te tuatahi me whakaatu marama ko ta tatou whainga ko te whakaputa i te paihere.
Na, ka whakamahia e matou te maven-bundle-plugin ki te kohi i te karaehe HelloWorld hei paihere OSGi, na te hapori Apache Felix:
Ko nga uara o nga pane OSGi e hiahia ana matou ki te whakauru ki te konae MANIFEST o te paihere kua tohua ki te waahanga tohutohu.
Ko te Bundle-Activator te ingoa tika mo te otinga BundleActivator ka whakamahia hei tiimata me te whakamutu i te paihere. He hototahi ki te karaehe hanga noa.
Ahakoa ehara i te pane OSGi, ka tohutohu te pane-Package Private i te mono ki te taapiri i te kete ki te paihere engari kaua e uru atu ki etahi atu monomai. Me whakamahi te tono whakauru mvn ki te hanga i te paihere.
Te Tāuta me te Whakahaere i te Paihere
Me timata a Karaf ma te whakahaere i tenei whakahau:
kei hea te "KARAF HOME" e tohu ana ki te kōpaki i whakaturia ai a Karaf. Ka taea e tatou te whakamahi i te whakahau e whai ake nei ki te whakauru i te paihere ina puta te tohu tohu Karaf:
Ma te whakamahi i te putunga Maven o te rohe ko te korero a Karaf ki te utaina te paihere.
Ka whakahokia mai te ID nama o te paihere, ka tuhia e Karaf. He rereke pea tenei ID i runga i te maha o nga paihere kua whakauruhia i mua. Kua oti pai te whakauru i te paihere, a ko te whakahau ki te whakarewa i te mea e whai ake nei:
I te wa ka whakarewahia e koe te kete, ka whakaatu "Tena Ao na Jay". Ka taea e tatou te whakamutu me te tango i te paihere ma te whakamahi:
Ka whakaatu te papatohu "Goodbye World na Jay."
Opaniraa
Ka taea e nga kaiwhakawhanake te taapiri i nga mahi hou ki tetahi tono tukutuku o naianei i te wa e mau tonu ana me te wehe mai i etahi atu waahanga o te kaupapa matua ma te whakamahi i te OSGi.
Kua akohia e matou mo te OSGi i roto i tenei pou, tae atu ki te pehea o tana mahi, ona painga, me te kaupapa tika. Ehara i te mea uaua ki te whakauru i te OSGi ki to ake tono.
Kia hari te whakawaehere!
Waiho i te Reply