Maven - Template Proyek

Maven menyediakan pengguna, daftar yang sangat besar dari berbagai jenis template proyek (614 dalam angka) menggunakan konsep Archetype. Maven membantu pengguna untuk memulai proyek java baru dengan cepat menggunakan perintah berikut.

mvn archetype:generate

Apa itu Pola Dasar?

Archetype adalah plugin Maven yang tugasnya adalah membuat struktur proyek sesuai templatnya. Kita akan menggunakan plugin arketipe quickstart untuk membuat aplikasi java sederhana di sini.

Menggunakan Template Proyek

Mari buka konsol perintah, buka C:\ > MVN direktori dan jalankan perintah berikut mvn perintah.

C:\MVN>mvn archetype:generate

Maven akan mulai memproses dan akan meminta untuk memilih arketipe yang diperlukan.

[INFO] Scanning for projects...
[INFO] Searching repository for plugin with prefix: 'archetype'.
[INFO] -------------------------------------------------------------------
[INFO] Building Maven Default Project
[INFO] task-segment: [archetype:generate] (aggregator-style)
[INFO] -------------------------------------------------------------------
[INFO] Preparing archetype:generate
...

600: remote −> org.trailsframework:trails-archetype (-)
601: remote −> org.trailsframework:trails-secure-archetype (-)
602: remote −> org.tynamo:tynamo-archetype (-)
603: remote −> org.wicketstuff.scala:wicket-scala-archetype (-)
604: remote −> org.wicketstuff.scala:wicketstuff-scala-archetype

Basic setup for a project that combines Scala and Wicket,
depending on the Wicket-Scala project.
Includes an example Specs test.)

605: remote −> org.wikbook:wikbook.archetype (-)
606: remote −> org.xaloon.archetype:xaloon-archetype-wicket-jpa-glassfish (-)
607: remote −> org.xaloon.archetype:xaloon-archetype-wicket-jpa-spring (-)
608: remote −> org.xwiki.commons:xwiki-commons-component-archetype
   (Make it easy to create a maven project for creating XWiki Components.)
609: remote −> org.xwiki.rendering:xwiki-rendering-archetype-macro
   (Make it easy to create a maven project for creating XWiki Rendering Macros.)
610: remote −> org.zkoss:zk-archetype-component (The ZK Component archetype)
611: remote −> org.zkoss:zk-archetype-webapp (The ZK wepapp archetype)
612: remote −> ru.circumflex:circumflex-archetype (-)
613: remote −> se.vgregion.javg.maven.archetypes:javg-minimal-archetype (-)
614: remote −> sk.seges.sesam:sesam-annotation-archetype (-)
Choose a number or apply filter
(format: [groupId:]artifactId, case sensitive contains): 203:

Tekan Enter untuk memilih opsi default (203: maven-archetype-quickstart)

Maven akan menanyakan arketipe versi tertentu.

Choose org.apache.maven.archetypes:maven-archetype-quickstart version:
1: 1.0-alpha-1
2: 1.0-alpha-2
3: 1.0-alpha-3
4: 1.0-alpha-4
5: 1.0
6: 1.1
Choose a number: 6:

Tekan Enter untuk memilih opsi default (6: maven-archetype-quickstart: 1.1)

Maven akan menanyakan detail proyeknya. Masukkan detail proyek seperti yang diminta. Tekan Enter jika nilai default diberikan. Anda dapat menggantinya dengan memasukkan nilai Anda sendiri.

Define value for property 'groupId': : com.companyname.insurance
Define value for property 'artifactId': : health
Define value for property 'version': 1.0-SNAPSHOT:
Define value for property 'package': com.companyname.insurance:

Maven akan meminta konfirmasi detail proyek. Tekan enter atau tekan Y.

Confirm properties configuration:
groupId: com.companyname.insurance
artifactId: health
version: 1.0-SNAPSHOT
package: com.companyname.insurance
Y:

Sekarang Maven akan mulai membuat struktur proyek dan akan menampilkan berikut ini -

[INFO]-----------------------------------------------
[INFO] Using following parameters for creating project
from Old (1.x) Archetype: maven-archetype-quickstart:1.1
[INFO]-----------------------------------------------

[INFO] Parameter: groupId, Value: com.companyname.insurance
[INFO] Parameter: packageName, Value: com.companyname.insurance
[INFO] Parameter: package, Value: com.companyname.insurance
[INFO] Parameter: artifactId, Value: health
[INFO] Parameter: basedir, Value: C:\MVN
[INFO] Parameter: version, Value: 1.0-SNAPSHOT

[INFO] project created from Old (1.x) Archetype in dir: C:\MVN\health
[INFO]-----------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO]-----------------------------------------------
[INFO] Total time: 4 minutes 12 seconds
[INFO] Finished at: Fri Jul 13 11:10:12 IST 2012
[INFO] Final Memory: 20M/90M
[INFO]-----------------------------------------------

Proyek yang Dibuat

Sekarang pergi ke C:\ > MVNdirektori. Anda akan melihat proyek aplikasi java dibuat, bernamahealth, yang diberikan sebagai artifactIdpada saat pembuatan proyek. Maven akan membuat tata letak direktori standar untuk proyek seperti yang ditunjukkan di bawah ini -

Membuat POM.xml

Maven menghasilkan file POM.xml untuk proyek seperti yang tercantum di bawah ini -

<project xmlns = "http://maven.apache.org/POM/4.0.0" 
   xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 
   http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.companyname.insurance</groupId>
   <artifactId>health</artifactId>
   <version>1.0-SNAPSHOT</version>
   <packaging>jar</packaging>
   <name>health</name>
   <url>http://maven.apache.org</url>
   <properties>
      <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
   </properties>
   <dependencies>
      <dependency>
      <groupId>junit</groupId>
         <artifactId>junit</artifactId>
         <version>3.8.1</version>
         <scope>test</scope>
      </dependency>
   </dependencies>
</project>

Membuat App.java

Maven menghasilkan contoh file sumber java, App.java untuk proyek seperti yang tercantum di bawah ini -

Lokasi: C:\ > MVN > health > src > main > java > com > companyname > insurance > App.java.

package com.companyname.insurance;

/**
   * Hello world!
   *
*/
public class App {
   public static void main( String[] args ) {
      System.out.println( "Hello World!" );
   }
}

Membuat AppTest.java

Maven membuat contoh file pengujian sumber java, AppTest.java untuk proyek seperti yang tercantum di bawah ini -

Lokasi: C:\ > MVN > health > src > test > java > com > companyname > insurance > AppTest.java.

package com.companyname.insurance;

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;

/**
   * Unit test for simple App.
*/
public class AppTest extends TestCase {
   /**
      * Create the test case
      *
     * @param testName name of the test case
   */
   public AppTest( String testName ) {
      super( testName );
   }
   /**
      * @return the suite of tests being tested
   */
   public static Test suite() {
      return new TestSuite( AppTest.class );
   }
   /**
      * Rigourous Test :-)
   */
   public void testApp() {
      assertTrue( true );
   }
}

Sekarang Anda bisa melihat kekuatan Maven. Anda dapat membuat proyek apa pun menggunakan satu perintah di maven dan dapat memulai pengembangan Anda.

Pola Dasar yang Berbeda

Sr.No. Artefak & Deskripsi Arketipe
1

maven-archetype-archetype

Sebuah arketipe, yang berisi arketipe sampel.

2

maven-archetype-j2ee-simple

Sebuah pola dasar, yang berisi contoh aplikasi J2EE yang disederhanakan.

3

maven-archetype-mojo

Pola dasar, yang berisi sampel plugin Maven sampel.

4

maven-archetype-plugin

Pola dasar, yang berisi contoh plugin Maven.

5

maven-archetype-plugin-site

Pola dasar, yang berisi contoh situs plugin Maven.

6

maven-archetype-portlet

Pola dasar, yang berisi sampel Portlet JSR-268.

7

maven-archetype-quickstart

Pola dasar, yang berisi proyek Maven sampel.

8

maven-archetype-simple

Pola dasar, yang berisi proyek Maven sederhana.

9

maven-archetype-site

Sebuah pola dasar, yang berisi contoh situs Maven untuk mendemonstrasikan beberapa tipe dokumen yang didukung seperti APT, XDoc, dan FML dan mendemonstrasikan bagaimana untuk i18n situs Anda.

10

maven-archetype-site-simple

Pola dasar, yang berisi contoh situs Maven.

11

maven-archetype-webapp

Sebuah pola dasar, yang berisi contoh proyek Maven Webapp.