taotao--maven框架搭建思路(用時1下午+1晚上)


一、確定依賴關系

整個項目分成三個部分:

parent:pom,負責聚合整個項目,確定所有jar包的版本。

common:jar包,放置通用的組件,工具類。

manage:pom,負責聚合后台的web ,service,mapper,pojo.

 

二、Maven配置

解壓maven,並配置到環境變量。可以參考:http://blog.csdn.net/wangmei4968/article/details/50086411

 

三、根據依賴創建maven項目,並配置xml文件。

parent的pom文件中,放置了所有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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.taotao</groupId>
    <artifactId>taotao-parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <groupId>com.taotao</groupId>
  <artifactId>taotao-common</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  
  <!-- jar包依賴 -->
 <dependencies>
 		<!-- 時間操作組件 -->
			<dependency>
				<groupId>joda-time</groupId>
				<artifactId>joda-time</artifactId>
			</dependency>
			<!-- Apache工具組件 -->
			<dependency>
				<groupId>org.apache.commons</groupId>
				<artifactId>commons-lang3</artifactId>
			</dependency>
			<dependency>
				<groupId>org.apache.commons</groupId>
				<artifactId>commons-io</artifactId>
			</dependency>
			<dependency>
				<groupId>commons-net</groupId>
				<artifactId>commons-net</artifactId>
			</dependency>
			<!-- Jackson Json處理工具包 -->
			<dependency>
				<groupId>com.fasterxml.jackson.core</groupId>
				<artifactId>jackson-databind</artifactId>
			</dependency>
			<!-- httpclient -->
			<dependency>
				<groupId>org.apache.httpcomponents</groupId>
				<artifactId>httpclient</artifactId>
			</dependency>
			<!-- 單元測試 -->
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<scope>test</scope>
			</dependency>
			<!-- 日志處理 -->
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-log4j12</artifactId>
			</dependency>
		
 </dependencies>
</project>

 common的pom文件主要放置了時間操作,apache工具,Json處理工具,httpclient,單元測試,日志處理工具。

<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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.taotao</groupId>
    <artifactId>taotao-parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <groupId>com.taotao</groupId>
  <artifactId>taotao-common</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  
  <!-- jar包依賴 -->
 <dependencies>
 		<!-- 時間操作組件 -->
			<dependency>
				<groupId>joda-time</groupId>
				<artifactId>joda-time</artifactId>
			</dependency>
			<!-- Apache工具組件 -->
			<dependency>
				<groupId>org.apache.commons</groupId>
				<artifactId>commons-lang3</artifactId>
			</dependency>
			<dependency>
				<groupId>org.apache.commons</groupId>
				<artifactId>commons-io</artifactId>
			</dependency>
			<dependency>
				<groupId>commons-net</groupId>
				<artifactId>commons-net</artifactId>
			</dependency>
			<!-- Jackson Json處理工具包 -->
			<dependency>
				<groupId>com.fasterxml.jackson.core</groupId>
				<artifactId>jackson-databind</artifactId>
			</dependency>
			<!-- httpclient -->
			<dependency>
				<groupId>org.apache.httpcomponents</groupId>
				<artifactId>httpclient</artifactId>
			</dependency>
			<!-- 單元測試 -->
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<scope>test</scope>
			</dependency>
			<!-- 日志處理 -->
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-log4j12</artifactId>
			</dependency>
		
 </dependencies>
</project>

 manager的pom文件,主要進行依賴管理,配置tomcat插件。創建manager的子項時候,創建的是maven model.

 <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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.taotao</groupId>
    <artifactId>taotao-parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <groupId>com.taotao</groupId>
  <artifactId>taotao-manager</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>pom</packaging>
  
  <!-- 依賴管理  -->
  <dependencies>
  	<dependency>
  		 <groupId>com.taotao</groupId>
  		 <artifactId>taotao-common</artifactId>
  		 <version>0.0.1-SNAPSHOT</version>
  	</dependency>
  </dependencies>
  
  <modules>
  	<module>taotao-manager-pojo</module>
  	<module>taotao-manager-mapper</module>
  	<module>taotao-manager-service</module>
  	<module>taotao-manager-web</module>
  </modules>
  
  
  <!-- 配置插件 -->
  <build>
  	<plugins>
			<!-- 配置Tomcat插件 -->
			<plugin>
					<groupId>org.apache.tomcat.maven</groupId>
					<artifactId>tomcat7-maven-plugin</artifactId>
					<configuration>
						<port>8080</port>
						<path>/</path>
					</configuration>
				</plugin>
  	</plugins>
  </build>
</project>

 mapper的pom文件,主要防止依賴管理,mysql,連接池信息。

<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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.taotao</groupId>
    <artifactId>taotao-manager</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>taotao-manager-mapper</artifactId>
  
  
  <!-- 依賴管理 -->
  <dependencies>
  	<dependency>
  		<groupId>com.taotao</groupId>
   		<artifactId>taotao-manager-pojo</artifactId>
   		<version>0.0.1-SNAPSHOT</version>
  	</dependency>
  	
  	<!-- Mybatis -->
	<dependency>
		<groupId>org.mybatis</groupId>
		<artifactId>mybatis</artifactId>
		<version>${mybatis.version}</version>
	</dependency>
	<dependency>
		<groupId>org.mybatis</groupId>
		<artifactId>mybatis-spring</artifactId>
		<version>${mybatis.spring.version}</version>
	</dependency>
	<dependency>
		<groupId>com.github.miemiedev</groupId>
		<artifactId>mybatis-paginator</artifactId>
		<version>${mybatis.paginator.version}</version>
	</dependency>
	
	<dependency>
		<groupId>com.github.pagehelper</groupId>
		<artifactId>pagehelper</artifactId>
		<version>${pagehelper.version}</version>
	</dependency>
					
	<!-- MySql -->
	<dependency>
		<groupId>mysql</groupId>
		<artifactId>mysql-connector-java</artifactId>
		<version>${mysql.version}</version>
	</dependency>
	<!-- 連接池 -->
	<dependency>
		<groupId>com.alibaba</groupId>
		<artifactId>druid</artifactId>
		<version>${druid.version}</version>
	</dependency>
  	
  </dependencies>
</project>

 servcie的pom里面,主要配置依賴管理,還有一些spring的配置。

<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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.taotao</groupId>
    <artifactId>taotao-manager</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>taotao-manager-service</artifactId>
  <!-- 依賴管理 -->
  <dependencies>
  	<dependency>
  		<groupId>com.taotao</groupId>
    <artifactId>taotao-manager-mapper</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  	</dependency>
  	
  		<!-- Spring -->
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-context</artifactId>
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-beans</artifactId>
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-webmvc</artifactId>
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-jdbc</artifactId>
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-aspects</artifactId>
			</dependency>
  	
  	
  </dependencies>
</project>

 

 

pojo里面基本不用配置什么信息。

<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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com.taotao</groupId>
    <artifactId>taotao-manager</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>taotao-manager-pojo</artifactId>
</project>

 

四、配置完成后,進行maven的clean,install,如果中間代碼當不下來,可以查看.m2里面的settings.xml文件

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">

	<!-- 設置本地倉庫路徑 -->
	<localRepository>D:\taotaoproject\repository</localRepository>

	<!-- 設置發布 jar 包時的用戶名及密 -->
	<servers>
		<server>
			<id>releases</id>
			<username>admin</username>
			<password>admin123</password>
		</server>

		<server>
			<id>snapshots</id>
			<username>admin</username>
			<password>admin123</password>
		</server>		
	</servers>

	<!-- 設置 maven 的遠程倉庫為 nexus -->
	<mirrors>
	<mirror>  
			<id>nexus</id>
			<mirrorOf>central</mirrorOf>
			<name>nexus repository</name>
			<url>http://192.168.22.246:8081/nexus/content/groups/public</url>
		</mirror> 
 		<!-- <mirror>  
			<id>CN</id>  
			<name>OSChina Central</name>                                                                                                                         
			<url>http://maven.oschina.net/content/groups/public/</url>  
			<mirrorOf>central</mirrorOf>  
		</mirror> -->
		
	</mirrors>

	<!-- 設置 central 的路徑等 -->
	<profiles>
		<profile>
			<id>central</id>
			<repositories>
				<repository>
					<id>central</id>
					<name>Central</name>
					<url>http://192.168.22.246:8081/nexus/content/groups/public</url>
				</repository>
			</repositories>
			<pluginRepositories>
				<pluginRepository>
					<id>central</id>
					<name>Central</name>
					<url>http://192.168.22.246:8081/nexus/content/groups/public</url>
				</pluginRepository>
			</pluginRepositories>
		</profile> 
	</profiles>


	<activeProfiles> 

		<activeProfile>central</activeProfile>
	</activeProfiles>

	<!-- 配置eclipse插件 -->
	<pluginGroups>
		<pluginGroup>org.mortbay.jetty</pluginGroup>	
		<pluginGroup>org.codehaus.cargo</pluginGroup>
		<pluginGroup>org.jvnet.hudson.tools</pluginGroup>
	</pluginGroups>

</settings>

 http://192.168.22.246:8081/nexus/content/groups/public  為私服的地址,可以進去查看是否有該jar包,該jar包版本是否正確。

 

maven常用命令:

maven clean ,清除產生的項目

maven install,編譯

maven test,運行測試

maven generate-sources.產生應用需要的任何額外的源代碼

 

此處通過install下載jar包,最后選擇Maven build, 輸入clean tomcat7:run  ,進行自帶tomcat插件啟動。

 

五、svn管理

安裝svn客戶端,目錄有三:

branches:分支,5.0結項,有bug,6.0正在進行,需要檢出分支,進行修改。

tags:存檔目錄(不允許修改)。

trunk:主干,一般開發代碼。

上傳代碼的時候,右鍵項目,選擇team——share project——創建資源庫(從svn復制的url路徑)——進行svn關聯。

在Team Synchronizing視圖里面,要ingnore *.project,*.settings.xml,*.classPath,*.target文件,提交pom ,src,src/site文件。

此文件只需要提交common,manager,parent即可,因為已經在manager里面配置好了關系,所以可以直接提交manager,svn就有了其他文件。但是如果要編輯模塊,還要添加maven exist model,例如web ,mapper等。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM