☞ 创建项目
- 选定一个目录,如E:\workspace\maven,新建的项目将放在这个目录。
- 运行CMD,切换到该目录。
- 执行mvn archetype:generate
直到输出"Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 634:"会暂停,直接回车,继续。
直到输出"Choose org.apache.maven.archetypes:maven-archetype-quickstart version: ... Choose a number: 6:"会暂停,直接回车,继续。
直到输出"Define value for property 'groupId': :",输入项目的groupId,例如org.sonatype.mavenbook.ch03,回车继续。
直到输出"Define value for property 'artifactId': :",输入项目的artifactId,例如simple,回车继续。
直到输出"Define value for property 'version': 1.0-SNAPSHOT: :",输入版本号(默认为1.0-SNAPSHOT),回车继续。
直到输出"Define value for property 'package': org.sonatype.mavenbook.ch03: :",输入package(默认为org.sonatype.mavenbook.ch03),回车继续。
确认输入的参数,没有问题输入Y,回车继续;如果需要修改,输入N回车修改。
结束。 - 查看生成的内容
|- simple
|- src
| |- main
| | |- java
| | |- org.sonatype.mavenbook.ch03.App.java
| |- test
| |- java
| |- org.sonatype.mavenbook.ch03.AppTest.java
|- pom.xml
内容如下:package org.sonatype.mavenbook.ch03; /**
* Hello world!
*
*/
public class App
{
public static void main( String[] args )
{
System.out.println( "Hello World!" );
}
}App.java
package org.sonatype.mavenbook.ch03; 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 );
}
}AppTest.java
<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>org.sonatype.mavenbook.ch03</groupId>
<artifactId>simple</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging> <name>simple</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>pom.xml
☞ 安装项目
- 切换到simple目录,当前目录下有pom.xml文件。
- 执行mvn install
我在这一步的时候,因为使用的mirror缺少surefire-junit3而中断,后来换了mirror(http://repo1.maven.org/maven2/)才得以继续
执行安装命令之后,simple目录下,发现多了一个target目录:
|- target
|- classes
| |- org.sonatype.mavenbook.ch03.App.class
|- test-classes
| |- org.sonatype.mavenbook.ch03.AppTest.class
|- simple-1.0-SNAPSHOT.jar
|- maven-archiver
|- maven-status
|- surefire-reports
其实,我们这个项目已经经历过了编译、测试、打包和安装。可以在.m2/repository/org/sonatype/mavenbook/ch03/simple看到安装的内容:
|- simple
|- 1.0-SNAPSHOT
| |- simple-1.0-SNAPSHOT.jar
| |- simple-1.0-SNAPSHOT.pom
| |- _remote.repositories
| |- maven-metadata-local.xml
|- maven-metadata-local.xml
☞ 运行项目
在simple目录下执行 java -cp target/simple-1.0-SNAPSHOT.jar org.sonatype.mavenbook.ch03.App :
Hello Word级别的快速入门就到这里了,下一篇开始一些概念学习。