2008-05-19
maven 学习
关键字: maven
Maven2是类似Ant得java项目构建工具,能够帮助我们很好的构建项目。
首先,下载maven2:http://maven.apache.org
Maven2得使用:
1.将下载的Maven2得包解压到任意目录.配置环境变量.MAVEN_HOME:你得解压缩目录 PATH :%MAVEN_HOME%/bin
2.测试安装情况,在命令行输入: mvn -v 出现 Maven version: 2.0.4 表示安装成功
3.修改配置文件:去maven目录下得conf找到Setting.xml,修改其中的
<localRepository>D:\soft\LoaclRepository</localRepository>
这个路径表示本地资源库的位置。
4. 创建项目
mvn archetype:create -DgroupId=org.zhyh -DartifactId=my-app
项目创建前,会看到maven从网上下载多个项目用到的.jar文件, 项目创间完成后可以看到Maven2为我们创建的目录结构。
5.常用命令
mvn compile 编译
mvn test 执行所有的test用例
mvn test-compile 编译所有的test用例
mvn package 编译后打包
mvn install 将编译和打包好的文件发布到本地repository
mvn idea:idea
mvn eclipse:eclipse 创建项目文件,如果要创建eclipse项目文件。用mvn eclipse:eclipse
6.设置项目的依赖项
在以前的java项目中,管理java依赖是非常复杂和繁琐的,现在可以通过Maven2管理依赖。
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
配置了这个依赖项,运行项目前Maven2会自动下载junit得.jar包存于本地文件库中。
scope参数,配置运行时参数,表明scope的参数表明。
--compile:默认值。表明是所有任务所需的资源
--test:运行所有的测试用例时所需资源
--runtime:表明是运行时所需资源
--provided:JDK部分或应用服务器的classpath所需的资源
7.将多个项目构建于项目之中
如何在一个主目录构件多个项目呢。Maven也为我们提供了简单的办法。
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.zhyh</groupId>
<version>1.0-SNAPSHOT</version>
<artifactId>my-app</artifactId>
<packaging>pom</packaging>
<modules>
<module>module</module>
<module>dao</module>
<module>service</module>
<module>web</module>
</modules>
</project>
这里声明了子项目。
我们来生命子项目的依赖项,
DAO:的依赖项
<dependencies>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>module</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
service:的依赖项
<dependencies>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>module</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>dao</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
web的依赖项:
<dependencies>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>module</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>dao</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>service</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
我们还需要在每个子模块中配置,以表明这个子模块隶属于哪个项目
<parent>
<groupId>org.zhyh</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
首先,下载maven2:http://maven.apache.org
Maven2得使用:
1.将下载的Maven2得包解压到任意目录.配置环境变量.MAVEN_HOME:你得解压缩目录 PATH :%MAVEN_HOME%/bin
2.测试安装情况,在命令行输入: mvn -v 出现 Maven version: 2.0.4 表示安装成功
3.修改配置文件:去maven目录下得conf找到Setting.xml,修改其中的
<localRepository>D:\soft\LoaclRepository</localRepository>
这个路径表示本地资源库的位置。
4. 创建项目
mvn archetype:create -DgroupId=org.zhyh -DartifactId=my-app
项目创建前,会看到maven从网上下载多个项目用到的.jar文件, 项目创间完成后可以看到Maven2为我们创建的目录结构。
5.常用命令
mvn compile 编译
mvn test 执行所有的test用例
mvn test-compile 编译所有的test用例
mvn package 编译后打包
mvn install 将编译和打包好的文件发布到本地repository
mvn idea:idea
mvn eclipse:eclipse 创建项目文件,如果要创建eclipse项目文件。用mvn eclipse:eclipse
6.设置项目的依赖项
在以前的java项目中,管理java依赖是非常复杂和繁琐的,现在可以通过Maven2管理依赖。
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
配置了这个依赖项,运行项目前Maven2会自动下载junit得.jar包存于本地文件库中。
scope参数,配置运行时参数,表明scope的参数表明。
--compile:默认值。表明是所有任务所需的资源
--test:运行所有的测试用例时所需资源
--runtime:表明是运行时所需资源
--provided:JDK部分或应用服务器的classpath所需的资源
7.将多个项目构建于项目之中
如何在一个主目录构件多个项目呢。Maven也为我们提供了简单的办法。
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>org.zhyh</groupId>
<version>1.0-SNAPSHOT</version>
<artifactId>my-app</artifactId>
<packaging>pom</packaging>
<modules>
<module>module</module>
<module>dao</module>
<module>service</module>
<module>web</module>
</modules>
</project>
这里声明了子项目。
我们来生命子项目的依赖项,
DAO:的依赖项
<dependencies>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>module</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
service:的依赖项
<dependencies>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>module</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>dao</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
web的依赖项:
<dependencies>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>module</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>dao</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.zhyh</groupId>
<artifactId>service</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
我们还需要在每个子模块中配置,以表明这个子模块隶属于哪个项目
<parent>
<groupId>org.zhyh</groupId>
<artifactId>my-app</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>







评论排行榜