maven管理spring+mybatis+dubbo的pom配置

maven3依赖JDK7不然会报类版本错

Unsupported major.minor version 51.0

父级POM管理所有子模块的版本信息



<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.carjob</groupId>
	<artifactId>com-carjob-parent</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<name>com-carjob-parent Maven Webapp</name>
	<url>http://maven.apache.org</url>
	<packaging>pom</packaging>

	<modules>
		<module>../com-carjob-beans</module>
		<module>../com-carjob-commons</module>
		<module>../com-carjob-commons-api</module>
		<module>../com-carjob-provider-api</module>
		<module>../com-carjob-tools</module>
		<module>../com-carjob-web-api</module>
		<module>../com-carjob-provider</module>
	</modules>

	<properties>
		<maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<maven-compiler-plugin.version>2.3.2</maven-compiler-plugin.version>
		<maven.compile.source>1.6</maven.compile.source>
		<maven.compile.target>1.6</maven.compile.target>
		<spring.version>3.2.4.RELEASE</spring.version>
		<mybatis.version>3.2.4</mybatis.version>
		<org.slf4j-version>1.7.0</org.slf4j-version>
		<mybatis-spring-version>1.2.2</mybatis-spring-version>
		<junit-version>3.8.1</junit-version>
		<j2ee-version>6.0</j2ee-version>
		<common-pool-version>1.6</common-pool-version>
		<sqljdbc4-version>1.0</sqljdbc4-version>
		<dubbo-version>2.4.1</dubbo-version>
		<javassist-version>3.15.0-GA</javassist-version>
		<netty-version>3.2.5.Final</netty-version>
		<zkclient-version>0.4</zkclient-version>
		<common-dbcp-version>1.4</common-dbcp-version>
		<deploy-version>0.0.1-SNAPSHOT</deploy-version>
		<zookeeper-version>3.4.6</zookeeper-version>
	</properties>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<version>${junit-version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>javax</groupId>
				<artifactId>javaee-api</artifactId>
				<version>${j2ee-version}</version>
				<scope>provided</scope>
			</dependency>
			<!-- Spring -->
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-context</artifactId>
				<version>${spring.version}</version>
				<exclusions>
					<!-- Exclude Commons Logging in favor of SLF4j -->
					<exclusion>
						<groupId>commons-logging</groupId>
						<artifactId>commons-logging</artifactId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-webmvc</artifactId>
				<version>${spring.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-jdbc</artifactId>
				<version>${spring.version}</version>
			</dependency>

			<!-- mybatis -->
			<dependency>
				<groupId>org.mybatis</groupId>
				<artifactId>mybatis</artifactId>
				<version>${mybatis.version}</version>
			</dependency>
			<!-- mybatis/spring包 -->
			<dependency>
				<groupId>org.mybatis</groupId>
				<artifactId>mybatis-spring</artifactId>
				<version>${mybatis-spring-version}</version>
			</dependency>

			<dependency>
				<groupId>commons-pool</groupId>
				<artifactId>commons-pool</artifactId>
				<version>${common-pool-version}</version>
			</dependency>
			<dependency>
				<groupId>commons-dbcp</groupId>
				<artifactId>commons-dbcp</artifactId>
				<version>${common-dbcp-version}</version>
			</dependency>
			<dependency>
				<groupId>sqljdbc4</groupId>
				<artifactId>sqljdbc4</artifactId>
				<version>${sqljdbc4-version}</version>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-api</artifactId>
				<version>${org.slf4j-version}</version>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>jcl-over-slf4j</artifactId>
				<version>${org.slf4j-version}</version>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-log4j12</artifactId>
				<version>${org.slf4j-version}</version>
			</dependency>
			<!-- dubbo dependency -->
			<dependency>
				<groupId>com.alibaba</groupId>
				<artifactId>dubbo</artifactId>
				<version>${dubbo-version}</version>
				<exclusions>
					<exclusion>
						<artifactId>spring</artifactId>
						<groupId>org.springframework</groupId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>org.javassist</groupId>
				<artifactId>javassist</artifactId>
				<version>${javassist-version}</version>
			</dependency>
			<dependency>
				<groupId>org.jboss.netty</groupId>
				<artifactId>netty</artifactId>
				<version>${netty-version}</version>
			</dependency>
			<dependency>
				<groupId>com.101tec</groupId>
				<artifactId>zkclient</artifactId>
				<version>${zkclient-version}</version>
			</dependency>
			<!-- 依赖公共包 -->
			<dependency>
				<groupId>com.carjob</groupId>
				<artifactId>com-carjob-beans</artifactId>
				<version>${deploy-version}</version>
			</dependency>
			<dependency>
				<groupId>com.carjob</groupId>
				<artifactId>com-carjob-dao-api</artifactId>
				<version>${deploy-version}</version>
			</dependency>
			<dependency>
				<groupId>com.carjob</groupId>
				<artifactId>com-carjob-provider-api</artifactId>
				<version>${deploy-version}</version>
			</dependency>
			<dependency>
				<groupId>com.carjob</groupId>
				<artifactId>com-carjob-commons-api</artifactId>
				<version>${deploy-version}</version>
			</dependency>

			<!-- zkclient需要依赖该jar -->
			<dependency>
				<groupId>org.apache.zookeeper</groupId>
				<artifactId>zookeeper</artifactId>
				<version>${zookeeper-version}</version>
			</dependency>
			<dependency>
				<groupId>javax.servlet</groupId>
				<artifactId>javax.servlet-api</artifactId>
				<version>3.1.0</version>
			</dependency>
			<dependency>
				<groupId>org.glassfish.grizzly</groupId>
				<artifactId>grizzly-core</artifactId>
				<version>2.1.4</version>
			</dependency>
			<dependency>
				<groupId>javax.cache</groupId>
				<artifactId>cache-api</artifactId>
				<version>0.4</version>
			</dependency>
			<dependency>
				<groupId>org.mortbay.jetty</groupId>
				<artifactId>jetty</artifactId>
				<version>6.1.26</version>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<distributionManagement>
		<repository>
			<id>releases</id>
			<url>http://188.188.5.27:8081/nexus/content/repositories/releases</url>
		</repository>
		<snapshotRepository>
			<id>snapshots</id>
			<url>http://188.188.5.27:8081/nexus/content/repositories/snapshots</url>
		</snapshotRepository>
	</distributionManagement>


	<build>
		<finalName>com-carjob-parent</finalName>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>${maven-compiler-plugin.version}</version>
				<configuration>
					<source>${maven.compile.source}</source>
					<target>${maven.compile.target}</target>
					<encoding>${project.build.sourceEncoding}</encoding>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>

子模块配置实例(将dubbo服务打包成可执行jar包)

<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>

	<parent>
		<groupId>com.carjob</groupId>
		<artifactId>com-carjob-parent</artifactId>
		<version>0.0.1-SNAPSHOT</version>
	</parent>
	<artifactId>com-carjob-provider</artifactId>
	<packaging>jar</packaging>
	<version>${deploy-version}</version>
	<name>com-carjob-provider Maven Webapp</name>
	<url>http://maven.apache.org</url>

	<dependencies>
		<!-- <dependency>
			<groupId>javax</groupId>
			<artifactId>javaee-api</artifactId>
		</dependency>
		Spring -->
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-context</artifactId>
			<exclusions>
				<!-- Exclude Commons Logging in favor of SLF4j -->
				<exclusion>
					<groupId>commons-logging</groupId>
					<artifactId>commons-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-webmvc</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework</groupId>
			<artifactId>spring-jdbc</artifactId>
		</dependency>

		<!-- mybatis -->
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis</artifactId>
		</dependency>
		<!-- mybatis/spring包 -->
		<dependency>
			<groupId>org.mybatis</groupId>
			<artifactId>mybatis-spring</artifactId>
		</dependency>

		<dependency>
			<groupId>commons-pool</groupId>
			<artifactId>commons-pool</artifactId>
		</dependency>
		<dependency>
			<groupId>commons-dbcp</groupId>
			<artifactId>commons-dbcp</artifactId>
		</dependency>
		<dependency>
			<groupId>sqljdbc4</groupId>
			<artifactId>sqljdbc4</artifactId>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>jcl-over-slf4j</artifactId>
			<scope>runtime</scope>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-log4j12</artifactId>
			<scope>runtime</scope>
		</dependency>
		<!-- dubbo dependency -->
		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>dubbo</artifactId>
			<exclusions>
				<exclusion>
					<artifactId>spring</artifactId>
					<groupId>org.springframework</groupId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.javassist</groupId>
			<artifactId>javassist</artifactId>
		</dependency>
		<dependency>
			<groupId>org.jboss.netty</groupId>
			<artifactId>netty</artifactId>
		</dependency>
		<dependency>
			<groupId>com.101tec</groupId>
			<artifactId>zkclient</artifactId>
		</dependency>
		<dependency>
			<groupId>com.carjob</groupId>
			<artifactId>com-carjob-provider-api</artifactId>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
		</dependency>
		<dependency>
			<groupId>org.glassfish.grizzly</groupId>
			<artifactId>grizzly-core</artifactId>
		</dependency>
		<dependency>
		    <groupId>javax.cache</groupId>
		    <artifactId>cache-api</artifactId>
		</dependency>
		<dependency>
			<groupId>org.mortbay.jetty</groupId>
			<artifactId>jetty</artifactId>
		</dependency>
		
	</dependencies>
	<build>
		<finalName>com-carjob-provider</finalName>
		<plugins>
			<plugin>
				<artifactId>maven-assembly-plugin</artifactId>
                <configuration>
                    <descriptor>src/main/assembly/assembly.xml</descriptor>
                </configuration>
                <executions>
					<execution>
						<id>make-assembly</id>
						<phase>package</phase>
						<goals>
							<goal>single</goal>
						</goals>
					</execution>
				</executions>
            </plugin>
		</plugins>
	</build>
</project>

assembly.xml配置   (bin文件夹下放dubbo可执行的.bat文件,conf文件夹下放dubbo.properties文件,打包之后文件目录如附件所示)

<!--
 - Copyright 1999-2011 Alibaba Group.
 -  
 - Licensed under the Apache License, Version 2.0 (the "License");
 - you may not use this file except in compliance with the License.
 - You may obtain a copy of the License at
 -  
 -      http://www.apache.org/licenses/LICENSE-2.0
 -  
 - Unless required by applicable law or agreed to in writing, software
 - distributed under the License is distributed on an "AS IS" BASIS,
 - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 - See the License for the specific language governing permissions and
 - limitations under the License.
-->
<assembly>
	<id>assembly</id>
	<formats>
		<format>tar.gz</format>
	</formats>
	<includeBaseDirectory>true</includeBaseDirectory>
	<fileSets>
		<fileSet>
			<directory><span style="font-family: Arial, Helvetica, sans-serif;">src/main/assembly</span><span style="font-family: Arial, Helvetica, sans-serif;">/bin</directory></span>
			<outputDirectory>bin</outputDirectory>
			<fileMode>0755</fileMode>
		</fileSet>
		<fileSet>
			<directory>src/main/assembly/conf</directory>
			<outputDirectory>conf</outputDirectory>
			<fileMode>0644</fileMode>
		</fileSet>
	</fileSets>
	<dependencySets>
		<dependencySet>
			<outputDirectory>lib</outputDirectory>
		</dependencySet>
	</dependencySets>
</assembly>



  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值