码迷,mamicode.com
首页 > 编程语言 > 详细

如何用Maven创建一个普通Java项目

时间:2015-01-30 19:38:14      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:

一下内容包括:用Maven创建一个普通Java项目,并把该项目转成IDEA项目,导入到IDEA,最后把这个项目打包成一个jar文件。

有时候运行mvn命令失败,重复运行几次就OK了,无解。

1、用Maven模板创建一个项目

打开控制台,进入到想要创建项目的目录,然后运行如下命令,参数自由填写:

1 mvn archetype:generate -DgroupId={project-packaging} 
2    -DartifactId={project-name} 
3    -DarchetypeArtifactId=maven-archetype-quickstart 
4    -DinteractiveMode=false

参数说明:

  1.1、-DgroupId:包名,如:com.google

  1.2、-DartifactId: 项目名称,如:NumberGenerator

  1.3、-DarchetypeArtifactId: 项目的类型,Maven提供了很多模板,如果你没写这个,创建的时候就会列出一大堆模板让你选择

  1.4、-DinteractiveMode: 是否使用交互模式,如果是true,那么在创建过程中就要手动输入一些参数

一个实际例子:

1 mvn archetype:generate -DgroupId=com.mkyong -DartifactId=NumberGenerator 
2     -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

在上面的例子中,Maven会创建一个名为"NumberGenerator"的项目,并把项目的目录结构自动创建好,如果你的命令执行失败了,那就手动创建吧。

2、项目结构

使用mvn archetype:generate + maven-archetype-quickstart模板创建出来的项目结构如下:

 1 NumberGenerator
 2    |-src
 3    |---main
 4    |-----java
 5    |-------com
 6    |---------mkyong
 7    |-----------App.java
 8    |---test
 9    |-----java
10    |-------com
11    |---------mkyong
12    |-----------AppTest.java
13    |-pom.xml

所有源代码放在/src/main/java/目录里,所有测试代码放在/src/test/java/目录里。

除此之外还会生成一个标准的pom.xml文件,里面描述了整个项目的信息,所有信息都是从目录结构里来的,包括项目插件、依赖关系以及如何编译项目等等,里面内容如下,具体查看official POM guide.。

 1 <project xmlns="http://maven.apache.org/POM/4.0.0" 
 2     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 3       xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
 4     http://maven.apache.org/maven-v4_0_0.xsd">
 5   <modelVersion>4.0.0</modelVersion>
 6   <groupId>com.mkyong</groupId>
 7   <artifactId>NumberGenerator</artifactId>
 8   <packaging>jar</packaging>
 9   <version>1.0-SNAPSHOT</version>
10   <name>NumberGenerator</name>
11   <url>http://maven.apache.org</url>
12   <dependencies>
13     <dependency>
14       <groupId>junit</groupId>
15       <artifactId>junit</artifactId>
16       <version>3.8.1</version>
17       <scope>test</scope>
18     </dependency>
19   </dependencies>
20 </project>

3、IDEA IDE

要把这个项目转成IDEA项目,要进入到"NumberGenerator"目录,然后运行如下命令,Maven将会生成IEAD所需的所有文件:

1 mvn idea:idea -DjdkName=1.7

此处的JDK版本一定要写,我没写时运行就出错了。JDK版本可通过运行 java -version 获得。mvn iead:iead 命令详解:http://maven.apache.org/plugins/maven-idea-plugin/usage.html

导入后如下图所示:

技术分享

4、更新pom.xml文件

默认的pom.xml文件太简单了,大多数时候你需要添加编译插件,告诉Maven用哪个JDK版本来编译你的项目(默认是1.4,太旧了)。

 1 <plugin>
 2     <groupId>org.apache.maven.plugins</groupId>
 3     <artifactId>maven-compiler-plugin</artifactId>
 4     <version>2.3.2</version>
 5     <configuration>
 6         <!--指定JDK版本-->
 7         <source>1.7</source>
 8         <target>1.7</target>
 9     </configuration>
10 </plugin>

把jUnit升级到4.11版本:

1 <dependency>
2     <groupId>junit</groupId>
3     <artifactId>junit</artifactId>
4     <version>4.11</version>
5     <scope>test</scope>
6 </dependency>

上面的代码片段叫做"Maven Coordinate",你需要自己到Maven中心仓库查找所需的"Maven Coordinate"。

完整的pom.xml:

 1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 2   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 3   <modelVersion>4.0.0</modelVersion>
 4   <groupId>com.yanyd</groupId>
 5   <artifactId>NumberGenerator</artifactId>
 6   <packaging>jar</packaging>
 7   <version>1.0-SNAPSHOT</version>
 8   <name>NumberGenerator</name>
 9   <url>http://maven.apache.org</url>
10   <dependencies>
11     <dependency>
12       <groupId>junit</groupId>
13       <artifactId>junit</artifactId>
14       <version>4.11</version>
15       <scope>test</scope>
16     </dependency>
17   </dependencies>
18   <build>
19       <plugins>
20           <plugin>
21               <groupId>org.apache.maven.plugins</groupId>
22               <artifactId>maven-compiler-plugin</artifactId>
23               <version>2.3.2</version>
24               <configuration>
25                   <!--JDK版本-->
26                   <source>1.7</source>
27                   <target>1.7</target>
28               </configuration>
29           </plugin>
30       </plugins>
31   </build>
32 </project>

在命令行再次输入命令:mvn idea:idea -DjdkName=1.7,Maven将会自动下载编译插件并自动升级jUnit的版本,并把依赖包放到本地仓库里。

 

如何用Maven创建一个普通Java项目

标签:

原文地址:http://www.cnblogs.com/yanyd/p/4263008.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!