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:/MVN/consumerBanking [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 | 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:/MVN/consumerBanking/src/main/java/com/companyname/bank文件夹,会看到App.java。
package com.companyname.bank; /** * Hello world! * */ public class App { public static void main( String[] args ) { System.out.println( "Hello World!" ); } }
打开 C:/MVN/consumerBanking/src/test/java/com/companyname/bank 文件夹, 你会看到 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构建和测试项目.