使用Maven创建Java项目和Java Web项目

来源:互联网 发布:php 正式表达式 验证qq 编辑:程序博客网 时间:2024/05/03 19:09

日期: 2016-7-12



内容: Maven创建java/web项目


装载来源: http://www.it165.net/pro/html/201303/5134.html


一、Maven的安装 :
1、将maven3.0解压到任一目录下,如D:\Program Files
2、配置环境变量:变量名:MAVEN_HOME   变量值:D:\Program Files\apache-maven-3.0.4
然后在Pathz中添加%MAVEN_HOME%\bin(同时Java环境变量配置成功)
3、运行cmd,输入mvn -version。若显示版本信息,则安装成功。
 
二、在命令行中使用Maven创建Java项目
1、使用命令行(开始-运行-cmd)进入一个自定义文件夹
2、在命令行中输入:mvn archetype:create -DgroupId=com.test -DartifactId=TestProject
groupId与artifactId惟一标识一个项目,它们也决定了这个项目在依赖库中的位置,这条命令执行完毕后,在执行命令的路径下会出现如下目录结构:
--TestProject
----src
------main
--------java
----------com
------------test
------test
--------java
----------com
------------test
并且在TestProject中生成了一个pom.xml文件,内容是一个项目应该有的最基本的配置,并且Maven默认添加了Junit的依赖,以此来鼓励单元测试。
Maven的一个优点就是使用标准的目录结构,从上面的目录结构可以看出来,标准的目录结构中有两棵源代码树,一棵是Java应用程序的代码树,一棵是单元测试代码树。
在执行创建项目的命令时,Maven会下载一些文件,当你开始调用工具时,Maven会根据你使用的插件来更新自身的一些功能。创建完项目后,在项目的pom.xml文件所在的目录下可以执行各种Maven命令,常用的有如下几种:
mvn test:运行应用程序中的单元测试
mvn package:依据项目生成jar文件
mvn install:将项目的jar文件添加到库中,以备依赖此项目时使用
mvn site:生成项目相关信息的网站
mvn clean:清除目标目录中的生成结果
mvn eclipse:eclipse:生成Eclipse项目文件
 
三、在命令行中使用Maven创建Java Web项目:
1、使用命令行(开始-运行-cmd)进入一个自定义文件夹 www.it165.net
2、在命令行中输入:mvn archetype:create -DgroupId=com.testweb -DartifactId=TestWebProject -DarchetypeArtifactId=maven-archetype-webapp
3、生成的项目目录如下:
TestWebProject
----src
------main
--------resources
--------webapp
----------WEB-INF
同样,在TestWebProject目录下也生成了pom.xml文件,并且在WEB-INF目录下生成了web.xml文件;不同的是,现在的项目打包不再是jar包,而是war包,可查看pom.xml文件中的package标签:<packaging>war</packaging>。另外,可以使用finalName标签来改变war包的名称,如:
<build>
<finalName>NewWarName</finalName>
</build>
在使用mvn package命令打包的时候,不必担心WEB-INF/lib中的依赖包如何得到,依赖属性值被设置成compile的情况下,Maven会自动包含依赖项。
 
四、管理依赖
使用Maven的一大好处就是可以统一管理依赖关系。为项目添加依赖关系也非常的简单,只需要添加一个dependency标签即可,如:
<dependency>
 <groupId>quartz</groupId>
<artifactId>quartz</artifactId>
 <version>1.5.1</version>
 <scope>compile</scope>
</dependency>
其中,groupId、artifactId和version指定了特定的依赖包及其版本;scope的取值有如下几种:
compile:默认值。表明是所有任务所需的资源
test:运行所有的测试用例时所需资源
runtime:表明是运行时所需资源
provided:JDK部分或应用服务器的classpath所需的资源


0 0
原创粉丝点击