Maven使用 archetype 来创建项目。要创建一个简单的 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 使用的标准目录结构,如下图所示:
用上面的例子中,我们可以了解到以下关键概念
文件夹结构 | 描述 |
---|---|
consumerBanking | 包括 src 目录和 pom.xml |
src/main/java | 包含封装结构下的 Java 代码的文件 (com/companyName/bank) |
src/main/test | 包含封装结构下的文本Java 测试代码文件 (com/companyName/bank) |
src/main/resources | 它包含图片/属性文件(在上面的例子中需要手动创建这个结构) |
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构建和测试项目