maven的pom.xml配置

一个典型的pom.xml文件配置如下
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
         <!-- 公司或者组织的唯一标志,并且配置时生成的路径也是由此生成 -->  
	<groupId>com.coral.test</groupId>
        <!--本项目的唯一ID,一个groupId下面可能多个项目,就是靠artifactId来区分的-->
	<artifactId>test-server</artifactId>
         <!--打包的机制,如pom,jar, maven-plugin, ejb, war, ear, rar, par,默认为jar-->
	<packaging>war</packaging>
      <!-- 本项目目前所处的版本号 -->
	<version>0.0.1-SNAPSHOT</version>
	<name>bsm-server</name>
	<url>http://maven.apache.org</url>
        <!--为pom定义一些常量,在pom中的其它地方可以直接引用 使用方式 -->
	<properties>
		<springframework.version>4.2.5.RELEASE</springframework.version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<slf4j.version>1.7.7</slf4j.version>
		<log4j.version>2.7</log4j.version>
	</properties>
       
	<dependencies>
              <!--一般情况下,maven是通过groupId、artifactId、version这三个元素值(俗称坐标)来检索该构件, 然后引入你的工程。如果别人想引用你现在开发的这个项目(前提是已开发完毕并发布到了远程仓库),-->   
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.11</version>
                         <!--scope包含如下的取值:compile(编译范围)、provided(已提供范围)、runtime(运行时范围)、test(测试范围)、system(系统范围) -->  
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.dianping.cat</groupId>
			<artifactId>cat-client</artifactId>
			<version>1.3.6-SNAPSHOT</version>
                        <!---- 屏蔽依赖关系-->
			<exclusions>
				<exclusion>
					<groupId>*</groupId>
					<artifactId>*</artifactId>
				</exclusion>
			</exclusions>
		</dependency>

		<dependency>
			<groupId>org.apache.hbase</groupId>
			<artifactId>hbase-client</artifactId>
			<version>1.2.3</version>
			<exclusions>
				<exclusion>
					<groupId>log4j</groupId>
					<artifactId>log4j</artifactId>
				</exclusion>
				<exclusion>
					<groupId>org.slf4j</groupId>
					<artifactId>slf4j-log4j12</artifactId>
				</exclusion>
				<exclusion>
					<artifactId>jdk.tools</artifactId>
					<groupId>*</groupId>
				</exclusion>
				<exclusion>
					<groupId>org.apache.httpcomponents</groupId>
					<artifactId>httpclient</artifactId>
				</exclusion>
				<exclusion>
					<groupId>org.apache.httpcomponents</groupId>
					<artifactId>httpcore</artifactId>
				</exclusion>
				<exclusion>
					<groupId>io.netty</groupId>
					<artifactId>netty-all</artifactId>
				</exclusion>
			</exclusions>
		</dependency>


		


		<!-- Spring相关 -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-web</artifactId>
			<version>${springframework.version}</version>
		</dependency>
		
		<!-- MySQL相关 -->
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.29</version>
		</dependency>

		<!-- Servlet相关 -->
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>servlet-api</artifactId>
			<scope>provided</scope>
			<version>2.5</version>
		</dependency>
		<dependency>
			<groupId>javax.servlet.jsp</groupId>
			<artifactId>jsp-api</artifactId>
			<scope>provided</scope>
			<version>2.1</version>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>jstl</artifactId>
			<version>1.2</version>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>3.3.2</version>
		</dependency>

	
		<!-- elasticsearch相关 -->
		<dependency>
			<groupId>org.elasticsearch.client</groupId>
			<artifactId>transport</artifactId>
			<version>5.3.2</version>
		</dependency>
	</dependencies>

	<build>
                <!-- 产生的构件的文件名,默认值是${artifactId}-${version}。 -->  
		<finalName>bsm-server</finalName>
                <!-- 构建产生的所有文件存放的目录,默认为${basedir}/target,即项目根目录下的target -->  
                 <directory>${basedir}/target</directory>
                <!--使用的插件列表 --> 
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<configuration>
					<testFailureIgnore>true</testFailureIgnore>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.mortbay.jetty</groupId>
				<artifactId>maven-jetty-plugin</artifactId>
				<version>6.1.26</version>
				<configuration>
					<scanIntervalSeconds>10</scanIntervalSeconds>
					<contextPath>/${project.name}</contextPath>
					<defaultsDescriptor>src/main/webapp/WEB-INF/web.xml</defaultsDescriptor>
					<connectors>
						<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
							<port>8080</port>
							<maxIdleTime>500000</maxIdleTime>
						</connector>
					</connectors>
					<systemProperties>
						<systemProperty>
							<name>catalina.home</name>
							<value>${basedir}/src/main</value>
						</systemProperty>
						<systemProperty>
							<name>MAVEN_OPTS</name>
							<value>-Xdebug -Xnoagent -Djava.compiler=NONE
								-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n</value>
						</systemProperty>
					</systemProperties>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<verbose>true</verbose>
					<fork>true</fork>
					<source>1.8</source>
					<target>1.8</target>
					<compilerVersion>1.8</compilerVersion>
					<encoding>UTF-8</encoding>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>

使用其他的jetty插件配置:

<plugin>
				<groupId>org.eclipse.jetty</groupId>
				<artifactId>jetty-maven-plugin</artifactId>
				<version>9.2.8.v20150217</version>
				<configuration>
					<httpConnector>
						<port>8080</port>
					</httpConnector>
					<stopKey>shutdown</stopKey>
					<stopPort>9966</stopPort>
					<!-- <scanIntervalSeconds>2</scanIntervalSeconds> -->
					<reload>manual</reload>
					<dumpOnStart>true</dumpOnStart>
					<webApp>
						<contextPath>/${project.artifactId}</contextPath>
						<!-- <resourceBases> <resourceBase>${project.basedir}/src/main/webapp</resourceBase> 
							<resourceBase>${project.basedir}/commons</resourceBase> </resourceBases> -->
					</webApp>
					<requestLog implementation="org.eclipse.jetty.server.NCSARequestLog">
						<filename>target/access-yyyy_mm_dd.log</filename>
						<filenameDateFormat>yyyy_MM_dd</filenameDateFormat>
						<logDateFormat>yyyy-MM-dd HH:mm:ss</logDateFormat>
						<logTimeZone>GMT+8:00</logTimeZone>
						<append>true</append>
						<logServer>true</logServer>
						<retainDays>120</retainDays>
						<logCookies>true</logCookies>
					</requestLog>
				</configuration>
			</plugin>
		</plugins>
(未完待续,欢迎交流)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值