位置:首頁 > Java技術 > Maven教學 > Maven創建Java項目

Maven創建Java項目

Maven使用原型插件來創建項目。要創建一個簡單的Java應用程序,我們使用maven-archetype-quickstart插件。在下麵的例子中,我們將創建一個基於Maven的Java應用程序項目在C:MVN文件夾。

讓我們打開命令控製台,進入到C:MVN目錄並執行以下命令mvn命令。

C:MVN>mvn archetype:generate
-DgroupId=com.companyname.bank 
-DartifactId=consumerBanking 
-DarchetypeArtifactId=maven-archetype-quickstart 
-DinteractiveMode=false

Maven會開始處理,並建立完整的Java應用程序項目結構。

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
[INFO] No goals needed for project - skipping
[INFO] [archetype:generate {execution: default-cli}]
[INFO] Generating project in Batch mode
[INFO] -------------------------------------------------------------------
[INFO] Using following parameters for creating project 
 from Old (1.x) Archetype: maven-archetype-quickstart:1.0
[INFO] -------------------------------------------------------------------
[INFO] Parameter: groupId, Value: com.companyname.bank
[INFO] Parameter: packageName, Value: com.companyname.bank
[INFO] Parameter: package, Value: com.companyname.bank
[INFO] Parameter: artifactId, Value: consumerBanking
[INFO] Parameter: basedir, Value: C:MVN
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] project created from Old (1.x) Archetype in dir: C:MVNconsumerBanking
[INFO] ------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------
[INFO] Total time: 14 seconds
[INFO] Finished at: Tue Jul 10 15:38:58 IST 2012
[INFO] Final Memory: 21M/124M
[INFO] ------------------------------------------------------------------

現在去到C:/ MVN目錄。將看到創建了一個Java應用程序項目命名consumerBanking(如artifactId規定)。 Maven使用標準的目錄結構如下圖所示:

Java application project structure

用上麵的例子中,我們可以了解到以下關鍵概念

文件夾結構 描述
consumerBanking contains src folder and pom.xml
src/main/java contains java code files under the package structure (com/companyName/bank).
src/main/test contains test java code files under the package structure (com/companyName/bank).
src/main/resources it contains images/properties files (In above example, we need to create this structure manually).

Maven還創建了一個示例Java源文件和Java測試文件。打開C:MVNconsumerBankingsrcmainjavacomcompanynameank文件夾,會看到App.java。

package com.companyname.bank;

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

打開 C:MVNconsumerBankingsrc estjavacomcompanynameank 文件夾, 你會看到 AppTest.java.

package com.companyname.bank;

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 );
    }
}

開發人員把他們的文件在提到上述表格和Maven處理所有構建相關的複雜性。

在下一節中,我們將討論如何使用Maven來構建和測試項目:Maven構建和測試項目.