maven使用配置
Posted CodeZLei
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了maven使用配置相关的知识,希望对你有一定的参考价值。
一.maven常用的命令
maven通过命令对工程进行编译、测试、打包、发布、运行(基本的顺序)
mvn compile:编译
mvn clean:清理,将target下的class文件清理
mvn test:执行单元测试类,执行src/test/java下的类
mvn package:将java工程打成jar、war,在target目录
mvn install:安装命令,将将程的jar发布到本地仓库
mvn deploy:发布到仓库,目录按照本工程定义的坐标生成目录
二.常用的maven项目的配置
a.java 项目
在pom文件中添加jdk版本的插件
<build> <plugins> <!-- 设置编译版本为1.7 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.7</source> <target>1.7</target> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </build>
b.java web项目
1.添加jdk插件+tomcat插件
<plugin> <groupId>org.apache.tomcat.maven</groupId> <artifactId>tomcat7-maven-plugin</artifactId> <configuration> <!-- 指定端口 --> <port>8081</port> <!-- 请求路径 --> <path>/</path> </configuration> </plugin> <!-- 设置编译版本为1.7 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.7</source> <target>1.7</target> <encoding>UTF-8</encoding> </configuration> </plugin>
2.添加servlet相关依赖
<dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jsp-api</artifactId> <version>2.0</version> <scope>provided</scope> </dependency>
3.修改web.xml的版本
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
4.运行 tomcat7:run,或者在bulid path 中的project facets 动态web工程打钩可以在tomcat上运行
三.创建依赖工程
a.创建简单的依赖的工程 引入坐标就完了
b.创建简单的父子(两个子依赖的工程);
1)父工程用的是simple project 创建pom
2)子工程用module jar war之类的,
3)都弄完在父工程上就可以install就可以tomcat7:run 了
四.pom的依赖范围
1. compile 默认的范围,编译测试运行都有效。
2. provided 编译和测试时有效,最后是在运行的时候不会被加入。官方举了一个例子。比如在JavaEE web项目中我们需要使用servlet的API,但是呢Tomcat中已经提供这个jar,我们在编译和测试的时候需要使用这个api,但是部署到tomcat的时候,如果还加入servlet构建就会产生冲突,这个时候就可以使用provided。
3. runtime 在测试和运行时有效。
4. test 在测试时有效。
5. system 与本机系统相关联,可移植性差。编译和测试时有效。
6. import 导入的范围,它只在使用dependencyManagement中,表示从其他pom中导入dependecy的配置。
五.maven的依赖传递
以上是关于maven使用配置的主要内容,如果未能解决你的问题,请参考以下文章
maven web项目的web.xml报错The markup in the document following the root element must be well-formed.(代码片段