pom.xml基础配置
pom.xml基础配置:
maven中,最让我迷惑的还是那一堆配置!
就拿这个属性配置来说:
我需要让整个项目统一字符集编码,就需要设定
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>;如果我需要让spring统一版本号,可以设置这么个变量<spring.framework.version>3.0.5.RELEASE</spring.framework.version>,当然,maven不会那么乖乖的自动识别这些配置。
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>默认还是可以识别的!
插件配置:
资源配置插件:
xml、properties文件都是资源文件,编码的时候遇到中文总要进行转码!用什么编码?UTF-8,那就记得强制
<encoding>${project.build.sourceEncoding}</encoding>,虽然
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>默认可以识别,但是我还是觉得不放心。
这些插件有时候即便是不配置,它也是默认存在的!
编译插件:
这个插件就是个默认配置,不过我还是谨慎的配置了jdk编译版本跟字符集设置:
<source>1.6</source>:源代码编译版本;
<target>1.6</target>:目标平台编译版本;
<encoding>${project.build.sourceEncoding}</encoding>:字符集编码。
如果你用eclipse建立maven项目时,新建的项目往往JDK版本很低——1.5!怎么办?修改settings.xml文件:
<profile>
<id>jdk-1.6</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.6</jdk>
</activation>
<properties>
<maven.compiler.source>1.6</maven.compiler.source>
<maven.compiler.target>1.6</maven.compiler.target>
<maven.compiler.compilerVersion>1.6</maven.compiler.compilerVersion>
</properties>
</profile>
eclipse会很听话的构建一个JDK1.6版本的maven项目!![]()
测试插件:
<threadCount>10</threadCount>:是线程数,当前是10;
<argLine>-Dfile.encoding=UTF-8</argLine>:就是参数命令行,这一行很关键。测试插件有个小问题,它不依赖项目的字符集设置,它依赖于操作系统。如果你用命令行操作,看中文提示测试结果还好。但在win+eclipse(UTF-8设置)下,那就是乱码了;
<skip>true</skip>是忽略测试;
<testFailureIgnore>true</testFailureIgnore>:忽略测试异常;
测试报告插件:
要测试,就要有报告,知晓测试覆盖率,这就需要clover:
安全起见,我还是要强制写遍字符集编码设置:
<encoding>${project.build.sourceEncoding}</encoding>
可以使用 mvn cobertura:cobertura 产生测试覆盖率报告!
eclipse插件:
在eclipse下进行maven项目开发,还是需要eclipse相应的插件:
<wtpmanifest>true</wtpmanifest>: 产生manifest文件
<wtpapplicationxml>true</wtpapplicationxml>: 产生web.xml文件
<wtpversion>2.0</wtpversion>: 这是eclipse里面的wtp版本
<downloadSources>true</downloadSources>: 下载源代码
<downloadJavadocs>true</downloadJavadocs>: 下载源码文档
虽然这么配置了,但是由maven项目转为eclipse的wtp类型的项目时,所产生的文件根本没有实际意义。web.xml文件的servlet版本很低,也许是我没有配置。对应的xml字符集的头标识也没有。
war包插件:
既然是web项目,就需要打war包,那就需要这个插件:
<encoding>${project.build.sourceEncoding}</encoding> 强制字符集编码
<warName>platform</warName> war包名字——platform.war
<webappDirectory>${project.build.directory}/platform</webappDirectory> 产生war前,用于存放构建war包的目录——target/platform。
<warSourceDirectory>WebContent</warSourceDirectory>: 我把web工程搞成了eclipse下的WTP类型。我不喜欢maven产生的webapp目录,更喜欢WebContent!
tomcat插件:
我习惯于用tomcat作为JSP容器,对jetty多少有点陌生。不但如此,我还通过在Bamboo中配置命令让这个应用可以在tomcat中定时部署:
<charset>${project.build.sourceEncoding}</charset>: 字符集强制编码
<url>http://localhost:8080/manager/text</url>: 我这里已经使用了Tomcat7,如果是Tomcat6就不需要/text!
<server>tomcat.server</server> 这是个用户名设置,需要配置maven的settings.xml文件:
在tomcat的tomcat-users.xml中补充相关内容:
<role rolename="manager-gui"/>
<role rolename="magager-script"/>
<user username="admin" password="123456" roles="manager-gui,manager-script" />
这是Tomat7的配置,在Tomcat6中应该是:
<role rolename="manager"/>
<user username="admin" password="123456" roles="manager" />
<port>8080</port>: 运行时端口
<path>/platform</path>: 是运行时路径——http://host:port/platform
<warFile>${project.build.directory}/platform.war</warFile>: 我们以war包方式发布,需要指定war包路径。
<warSourceDirectory>WebContent</warSourceDirectory>: 同时要指定war包源码路径。这里我使用eclipse的WTP类型工程WebContent目录。
<uriEncoding>${project.build.sourceEncoding}</uriEncoding>: 强制字符集编码!
插件命令:
#Run Tomcat
mvn tomcat:run
#Stop Tomcat
#Deploy Tomcat
mvn tomcat:deploy
#Undeploy Tomcat
mvn tomcat:undeploy
#Redeploy Tomcat
mvn tomcat:redeploy
对于我来说,我最常用的就是mvn tomcat:run 跟 mvn tomcat:redeploy,而且我会把他们配置在eclipse中:

加上个-X,我可以清楚的知道每一个插件的配置,以及详细的Debug信息!
pom.xml基础配置的更多相关文章
- 【配置】pom.xml的配置
pom.xml的配置: 地址:https://mvnrepository.com/ 示例:配置log4j 1.在搜索框中搜索log4j 2.在搜索结果页点击log4j 3.选择一个最新的版本,点击 4 ...
- maven spark Scala idea搭建maven项目的 pom.xml文件配置
1.pom.xml文件配置,直接上代码. <?xml version="1.0" encoding="UTF-8"?> <project xm ...
- maven中pom.xml中配置整理: groupId、artifactId、parent、dependency、dependencyManagement区别
<groupId>com.mycompany.commonmaven</groupId> <artifactId>commonmaven</artifactI ...
- Java 在pom.xml中配置build resources, 来防止我们资源导出失败问题(Maven项目)
在pom.xml中配置build, 来防止我们资源导出失败问题 <!--在build中配置resources, 来防止我们资源导出失败问题--> <build> <res ...
- 探究如何永久更改Maven的Dynamic Web Project版本及pom.xml默认配置
一:问题 在用eclipse创建一个maven project (webApp)时,我们一般会要进行许多麻烦的配置,比如 1.更改Java jdk版本为1.7或1.8(默认1.5) 2.补全src/m ...
- Maven管理SSM框架的pom.xml文件配置(自己主动下载所依赖的jar包)
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/UP19910522/article/details/25403855 <project xml ...
- (转)Maven的pom.xml文件配置使用
转载:http://www.cnblogs.com/GarfieldTom/p/3707160.html <project xmlns="http://maven.apache.org ...
- maven之pom.xml的配置
pom.xml是配置文件: <dependencies>表示依赖,里面可以有多个<dependency> 比如当前使用了junit的jar包,版本是3,8,1,我们现在更换新的 ...
- pom.xml文件配置maven仓库地址
中央仓库就是Maven的一个默认的远程仓库,Maven的安装文件中自带了中央仓库的配置($M2_HOME/lib/maven-model-builder.jar) 在很多情况下,默认的中央仓库无法满足 ...
随机推荐
- 树的合并 connect
树的合并 connect 题目描述 话说moreD经过不懈努力,终于背完了循环整数,也终于完成了他的蛋糕大餐. 但是不幸的是,moreD得到了诅咒,受到诅咒的原因至今无人知晓. moreD在发觉自己得 ...
- 将npm改成默认使用cnpm下载
淘宝的cnpm下载安装的命令为 npm install -g cnpm --registry=https://registry.npm.taobao.org 但是仅仅这样是不够的,这样只有主动去下载资 ...
- 【转】Nodejs学习笔记(二)--- 模块
目录 简介及资料 自定义模块 创建一个自定义模块 调用自定义模块 exports和module.exports 区别 exports和module.exports 覆盖 其它... 简介及资料 通过N ...
- Nginx ServerName 配置说明(转)
Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了. 下面我就来说说server_name的使用吧: s ...
- Java抽象类,接口,抽象方法
创建Animal抽象类 public abstract class Animal { public abstract void eat(); public abstract void sleep(); ...
- js2:事件的学习,弹出窗口,状态栏字改变,地图热点的使用
原文发布时间为:2008-11-08 -- 来源于本人的百度文章 [由搬家工具导入] <html> <head> <title>js</title> & ...
- android的布局-----TableLayout(表格布局)
学习导图 (1)TableLayout的相关简介 java的swing编程和html中经常会使用到表格,可见表格的应用开发中使用还是比较多的,同样android也为我们提供这样的布局方式. (2)如何 ...
- mysql error 1093 解决办法
mysql> select * from t; +----+ | id | +----+ | 1 | | 2 | | 3 | | 4 | | 5 | | 6 | | 7 | | 8 | | 9 ...
- Centos python 2.6 升级到 2.7
前几天做了下阿里云的RDS日志相关功能,其工具大都是Python语言编写,但服务器初始化时的Python版本又不满足需求,本身也没有学过Python,因此在问题定位上费了一番周折,最后找朋友帮忙看了下 ...
- 调用Thread.interrupt()方法到底会发生什么?
1. 当线程处于Blocked状态(sleep,wait,join),线程会退出阻塞状态,并抛出一个InterruptedException.park除外,它有响应但是不会抛出异常 2. 当线程处于R ...