JavaRush /Blog Jawa /Random-JV /Miwiti Maven Alfresco SDK part 2
CynepHy6
tingkat
Великий Новгород

Miwiti Maven Alfresco SDK part 2

Diterbitake ing grup

Miwiti karo Alfresco Maven SDK

Jeff Potts, Januari, 2014 <= ​​​​Part 1
  • Kita nggarap proyek sampeyan ing IDE
  • Ngerteni struktur proyek
  • Nggawe proyek sing diadaptasi kanggo akses Share
  • Ketergantungan Proyek Umum
  • target WAR
  • Coba iki: Nggawe proyek Share nggunakake archetype
  • Ngerteni struktur direktori Share Access
  • Bukak testing internal ing Share
  • Manajemen ketergantungan
  • Topik liyane kanggo sinau independen
  • Where kanggo golek informasi liyane

Kita nggarap proyek sampeyan ing IDE

Iki ora perlu, nanging akeh wong seneng bisa ing IDE nalika nyetel Alfresco. Sembarang IDE bakal nindakake iki, nanging salah sawijining sing paling populer yaiku Eclipse, mula ayo ndeleng cara kerjane.
Aku nggunakake versi Kepler saka Eclipse Java EE IDE kanggo Web Developers. Nerangake karo dibangun ing support Maven.
Kanggo mbukak proyek sing digawe, tindakake ing ngisor iki:
  • File, Impor, Maven, Proyek Maven sing Ana. Klik Sabanjure.
    Miwiti Maven Alfresco SDK part 2 - 1
  • Nemtokake direktori sing ngemot direktori someco-mvn-tutorial-repo. Eclipse bakal mriksa direktori iki lan nuduhake proyek sampeyan ing dhaptar proyek. Priksa manawa kothak centhang ing jejere jeneng proyek dipilih banjur klik Sabanjure.
    Miwiti Maven Alfresco SDK part 2 - 2
  • Eclipse bakal nuduhake setelan Maven Plugin Panel. Sampeyan bisa nglirwakake kanthi aman saiki. Klik Rampung.
    Miwiti Maven Alfresco SDK part 2 - 3
Proyek kasebut saiki diimpor menyang ruang kerja Eclipse sampeyan.
Ing panel Markers sampeyan bisa ndeleng dhaptar masalah Maven ngandika, "Plugin eksekusi ora dijamin dening konfigurasi siklus urip".
Maven duwe masalah karo plugin Maven duwe masalah karo plugins (set-versi)
Kanggo ndandani:
  1. Klik-tengen ing kesalahan lan pilih "Ndandani Cepet".
  2. Milih "Tandhani permanen goal set-versi ing pom.xml minangka digatèkaké ing Eclipse mbangun". siyap.
  3. Pilih lokasi ing ngendi POM sampeyan dumunung (mine com.someco : someco-mvn-tutorial-repo : 1.0-SNAPSHOT) banjur klik OK.
Sawise mbangun maneh proyek kasebut, sampeyan bisa ndeleng salah sawijining masalah paling anyar "Konfigurasi proyek ora anyar karo pom.xml". Kanggo koreksi:
  1. Klik-tengen ing project banjur pilih Maven, Update Project.
  2. Priksa manawa proyek dipilih lan klik OK.
Saiki Eclipse mbokmenawa seneng lan mung kesalahan amarga bebaya babagan sawetara impor Jawa sing ora digunakake.

Ngerteni struktur proyek

Struktur direktori proyek sampeyan luwih apik kanggo njelajah ing IDE sampeyan. Ayo ndeleng apa sing ana ing kene.
  • pom.xml Ing ROOT proyek sampeyan ndeleng pom.xml. Iku ngandhani Maven kabeh sing perlu ngerti babagan proyek sampeyan. Apa sampeyan ngelingi sawetara setelan sing sampeyan kelalen nalika nggawe proyek saka cithakan? Sampeyan bisa ngganti setelan ing kene. Contone, versi 1.1.1 saka archetype ngidini sampeyan nggarap Alfresco Community Edition versi 4.2.e. Yen sampeyan pengin nggarap versi sing beda - mung ngganti sawetara properti lan ngandhani Maven supaya nganyari lan bakal ngurus liyane.
  • src/main/java Iki ngendi sampeyan kudu nggawe paket dhewe kanggo ngatur kode Jawa. Prekara kaya kelas eksekutor tumindak khusus, prilaku khusus, pengontrol Java kanggo skrip web ana ing kene. Yen sampeyan ora ngerti apa kabeh iki, aja padha sumelang, ana tutorial kasedhiya kene . File kasebut pungkasane bakal diselehake ing JAR. Nalika AMP diinstal ing Alfresco WAR, JAR bakal ana ing WEB-INF/lib .
  • src/test Kabeh ing src/test ana hubungane karo eksekusi testing. Tes unit kasebut dhewe ana ing src/test/java . Sembarang sumber daya sing dibutuhake dening kelas kasebut bakal ana ing src/test/resources. Nang src/test/properties/local sampeyan bakal weruh file alfresco-global.properties . Yen sampeyan wis ngerti apa-apa bab Alfresco sampeyan ngerti sing digunakake kanggo ngatur server Alfresco. Ing kasus iki, iki mung digunakake kanggo mbukak server ditempelake, kanggo tujuan testing.
  • src / utama / amp Kabèh liya nang endi wae ing bagean project iki. Struktur AMP didokumentasikan kanthi apik, mula aku ora pengin duplikat ing kene. Aku mung bakal nuduhake poin utama:
    • File module.properties ngandhani Alfresco apa sing kudu dingerteni babagan AMP kayata ID, versi, versi minimal lan maksimum Alfresco sing dibutuhake kanggo mbukak AMP, lan AMP liyane kanthi dependensi sing padha.
    • Direktori config / alfresco / modul / someco-mvn-tutorial-repo minangka jantung AMP. Panggonan ing ngendi sampeyan bakal nyelehake konfigurasi file XML Spring, model isi file XML, lan konfigurasi antarmuka panganggo. Kaya sing bakal sampeyan deleng mengko, aku luwih seneng misahake subdirektori kanggo saben perkara kasebut.
    • Yen modul sampeyan kalebu skrip web utawa alur kerja, ora ana ing direktori modul. Nanging ana ing config/alfresco/extension/templates/webscripts lan config/alfresco/extension/workflows .
    • Modul sampeyan bisa uga kalebu sumber daya klien sing kudu disebarake menyang root aplikasi web. Padha dumunung ing src / main / amp / web ing css, jsp, skrip, lan direktori gambar.
Sampeyan kudu mriksa kabeh proyek iki menyang kontrol sumber. Sampeyan bisa uga pengin ngatur klien kontrol versi kanggo nglirwakake direktori target lan direktori alf_data_dev.
Saiki sampeyan ngerti carane nggawe proyek kanggo setelan tingkat repositori. Ayo goleki level Share. Minangka bagéan saka iki, aku bakal nuduhake pilihan liyane kanggo nggawe proyek tanpa ninggalake Eclipse.

Nggawe proyek sing diadaptasi kanggo akses Share

Kaping pisanan, sampeyan kudu ngerti manawa struktur kanggo proyek sing digawe ing tingkat gudang persis padha karo proyek kanggo lapisan akses Share sing diadaptasi. Ing mangsa Alfresco Maven SDK, ana rong perkara sing mbedakake proyek Share: dependensi proyek lan AMP WAR bakal dibangun.

Ketergantungan Proyek Umum

Ayo mandheg sedhela lan ngomong babagan manajemen ketergantungan. Ing wayahe, implementasine kaya sing kanthi standar archetype sing dikonfigurasi ing pom.xml proyek nggunakake dependensi artefak alfresco-repository. Proyek sing dienggo bareng ora duwe ketergantungan iki. Nyatane, akeh proyek Shared ora nggunakake Java. Saiki ayo ngowahi pom.xml lan mbusak dependensi alfresco-repository. Iki bakal nyebabake komponen demo lan kelas tes sing gegandhengan ngasilake kesalahan nalika dikompilasi. Padha bisa dibusak.

target WAR

Bab liya sing mbedakake proyek Share yaiku WAR ing ngendi AMP disebarake. Tinimbang WAR alfresco, ing kene sampeyan kudu nyebarake kanggo Share WAR. Iki dikonfigurasi ing properti alfresco.client.war ing pom.xml sampeyan. Kanthi gawan iki disetel kanggo "alfresco". Kanggo proyek Share, sampeyan kudu ngganti karo "share".

Coba iki: Nggawe proyek Share nggunakake archetype

Ayo nggawe proyek anyar nganggo Setelan Umum. Sampeyan bisa pindhah menyang baris printah lan mbukak printah archetype padha sing mlayu sadurunge, minus artifactId anyar, lan banjur ngganti property alfresco.client.war kanggo "nuduhake". Yen sampeyan ora nggunakake Eclipse, terusake saiki lan lewati bagean sabanjure.
Pilihan liyane yaiku ngatur Eclipse supaya sampeyan bisa nggawe proyek Alfresco anyar nggunakake Alfresco Maven SDK tanpa ninggalake IDE. Ayo ngono.
  1. File, New Maven Project.
  2. Pilih direktori sing ngemot direktori proyek "repo", klik Sabanjure.
    Miwiti Maven Alfresco SDK part 2 - 4
  3. Klik Konfigurasi lan kita bisa nambah direktori Alfresco menyang dhaptar.
    Miwiti Maven Alfresco SDK part 2 - 5
  4. Klik Tambah Katalog Jarak Jauh
  5. Pilih "https://artifacts.alfresco.com/nexus/content/groups/public/archetype-catalog.xml" minangka File Katalog. Pilih deskripsi "Alfresco Archetypes". Banjur, klik OK lan OK maneh nyedhaki panel Preferensi.
    Miwiti Maven Alfresco SDK part 2 - 6
  6. Saiki pilih "Alfresco Archetypes" ing direktori lan sampeyan bakal weruh akeh archetypes ing dhaptar.
  7. Pilih "org.alfresco.maven.archetype" lan loro archetypes padha bakal katon ing Filter minangka ing awal tutorial.
  8. Pilih alfresco-amp-archetype lan klik Sabanjure.
    Miwiti Maven Alfresco SDK part 2 - 7
  9. Milih "com.someco" kanggo groupId, "someco-mvn-tutorial-share" minangka artifactId, lan ngganti alfresco_target_amp_client_war dadi "share". Klik Rampung.
    Miwiti Maven Alfresco SDK part 2 - 8
Proyek Share sampeyan saiki ana ing ruang kerja. Sabanjure sampeyan nggawe proyek anyar nggunakake archetype, iku bakal njupuk sethitik kurang langkah amarga sampeyan ora perlu kanggo nambah direktori.

Ngerteni struktur direktori Share Access

Kaya sing wis dakcritakake sadurunge, struktur proyek iki padha karo proyek repo kita. Bentenipun mung ing proyek repo kayata skrip web dumunung ing src/main/amp/config/alfresco/extension/templates/webscripts. Ing proyek Umum bakal ana ing src/main/amp/config/alfresco /web-extension/site-webscripts.

Bukak testing internal ing Share

Asring sampeyan bakal nggarap loro tingkat setelan ing wektu sing padha. Tingkat Umum sampeyan butuh repositori kanggo pesen. Salah siji cara kanggo nindakake iki yaiku ngandhani Maven supaya miwiti proyek repo sampeyan nggunakake:
cd someco-mvn-tutorial-repo
mvn integrasi-test -Pamp-kanggo-perang
Banjur mbukak proyek Share nggunakake:
cd someco-mvn-tutorial-share
mvn integration-test -Pamp-to-war -Dmaven.tomcat.port=8081
Sawise loro server munggah, sampeyan bisa mbukak http: // localhost: 8081 / share lan mlebu kanggo nyoba modul sampeyan.

Manajemen ketergantungan

Sing apik babagan Apache Maven yaiku ngatur dependensi proyek sampeyan. Kabeh sing perlu dilakoni iku marang Maven bab mau dening configuring pom.xml Panjenengan. Kanthi gawan, Alfresco Maven SDK nggawe rong dependensi kanggo proyek sampeyan: alfresco-repository lan junit.
Kaya sing dakcritakake sadurunge, proyek Alfresco Share ora gumantung ing repositori Alfresco supaya kanggo proyek someco-mvn-tutorial-share, dependensi kasebut bisa dicopot. Nanging kepiye yen aku pengin nyelehake sawetara barang Jawa menyang proyek Share, kayata skrip web berbasis Java? Ing kasus iki, kita kudu nambah dependensi.
Skrip web bisa mlaku ing level apa wae. Yen sampeyan nulis skrip web berbasis Java ing proyek repo, kelas kasebut bakal dibangun amarga dependensi artefak alfresco-repository gumantung marang artefak spring-webscripts. Sampeyan bisa ndeleng iki yen sampeyan mbukak Hirarki Ketergantungan ing Eclipse ing file pom.xml sampeyan:
Hirarki Ketergantungan ing Eclipse
Hierarki dependensi ing Eclipse Pilihan liyane. Sampeyan bisa ndeleng hierarki dependensi kanthi mlaku:
mvn dependensi: dhaftar
Dadi, kanggo nambah skrip web basis Java menyang proyek Share, kita kudu nambah spring-webscripts minangka dependensi. Sampeyan bisa nindakake iki kanthi nyunting pom.xml kaya iki:
<ketergantungan>
    <groupId>org.springframework.extensions.surf</groupId>
    <artifactId>spring-webscripts</artifactId>
    <versi>1.2.0-M14</versi>
    <scope>disedhiyakake</scope>
</ketergantungan>
Saiki skrip web basis Java bakal bisa nemokake kelas induk - DeklaratifWebScript.
Sampeyan bisa uga mikir kepiye sampeyan ngerti yen kelas DeclarativeWebScript kalebu ing artefak spring-webscripts. Inggih, contone, wis ketemu dening pindhah menyang http://artifacts.alfresco.com . Sampeyan bisa nelusuri miturut kelas lan sampeyan bakal ditampilake kabeh artefak sing ngemot.

Topik liyane kanggo sinau independen

Sampeyan saiki ngerti carane nggunakake Alfresco Maven SDK kanggo nggawe proyek lan minangka repositori Alfresco lan ngatur Alfresco Share. Yen sampeyan anyar ing pembangunan Alfresco, Mugi sampeyan bakal setuju sing iku pancene gampang kanggo sijine bebarengan project kanggo miwiti. Yen sampeyan wis nandhang sikilmu teles karo Alfresco nanging isih nggunakake SDK lawas, muga-muga iki bisa menehi motivasi kanggo ngalih menyang SDK anyar kanggo nggawe AMP.
Ana akeh topik sing ora dibahas ing tutorial iki. Aku bakal ninggalake kanggo sampeyan njelajah ing discretion dhewe. Ing ngisor iki sawetara:
  • Alfresco Maven SDK ndhukung reloading kelas dinamis nalika digunakake bebarengan karo alat disebut JRebel .
  • Tutorial iki nyakup archetype AMP. Nanging Alfresco Maven SDK kalebu archetype liyane disebut All-in-One. Archetype iki menehi instalasi Alfresco lengkap kalebu SOLR.
  • Alfresco Maven SDK didhukung ing Edisi Komunitas lan Edisi Perusahaan. Yen sampeyan butuh bantuan kanggo ngakses artefak ing Enterprise Edition, hubungi Dhukungan Alfresco.

Where kanggo golek informasi liyane

<= Bagean 1
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION