读书人

使用Maven建立小弟我们的项目及简单的

发布时间: 2012-06-28 15:20:03 作者: rapoo

使用Maven建立我们的项目及简单的项目管理
<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.mycompany.app</groupId> <artifactId>my-app</artifactId> <packaging>war</packaging> <version>1.0.0</version> <name>my-app Maven Webapp</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <finalName>my-app</finalName> </build></project>

?剩下的工作就是添加maven仓库,添加依赖Jar包,配置各个Maven插件的版本,这点很重要,插件版本如果不配置,很可能造成插件升级后不兼容你当前的项目,下面简单介绍一下。

首先声明一些常量:

<properties><!-- 主要依赖库的版本定义(这里只是举例最新版自己去仓库找) --><spring.version>3.0.4.RELEASE</spring.version><hibernate.version>3.5.5-Final</hibernate.version><!-- Plugin的属性定义  --><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding></properties>

?然后声明我们可以去访问的仓库:

<repositories><repository><id>offical</id><name>Maven Official Repository</name><url>http://repo1.maven.org/maven2</url><snapshots><enabled>false</enabled></snapshots></repository><repository><id>jboss</id><name>Jboss Repository</name><url>http://repository.jboss.org/nexus/content/groups/public-jboss/</url><snapshots><enabled>false</enabled></snapshots></repository><repository><id>java.net</id><name>Java.net Repository</name><url>http://download.java.net/maven/2/</url><snapshots><enabled>false</enabled></snapshots></repository></repositories>

?再然后声明依赖的Jar包

<dependencies><!-- spring begin --><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><!-- spring aop --><dependency><groupId>org.springframework</groupId><artifactId>spring-aop</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-tx</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.aspectj</groupId><artifactId>aspectjrt</artifactId><version>${aspectj.version}</version></dependency><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>${aspectj.version}</version></dependency><dependency><groupId>cglib</groupId><artifactId>cglib-nodep</artifactId><version>${cglib.version}</version></dependency><!-- spring end --><!-- database access begin --><!-- hibernate --><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-core</artifactId><version>${hibernate.version}</version></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-annotations</artifactId><version>${hibernate.version}</version></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-ehcache</artifactId><version>${hibernate.version}</version></dependency><!-- newest version in jboss repository --><dependency><groupId>javassist</groupId><artifactId>javassist</artifactId><version>${javassist.version}</version></dependency><dependency><groupId>com.oracle</groupId><artifactId>ojdbc14</artifactId><version>${oracle.version}</version></dependency><!-- spring orm --><dependency><groupId>org.springframework</groupId><artifactId>spring-orm</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>${spring.version}</version></dependency></dependencies>
?

最后设置插件

<build><finalName>my-webapp</finalName><!-- 编译输出目录 --><outputDirectory>${basedir}/src/main/webapp/WEB-INF/classes</outputDirectory><plugins><!-- compiler插件, 设定JDK版本 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>2.3.2</version><configuration><source>1.6</source><target>1.6</target><showWarnings>true</showWarnings></configuration></plugin><!-- test插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-surefire-plugin</artifactId><version>2.6</version><configuration><skip>true</skip><testFailureIgnore>true</testFailureIgnore><includes><include>**/*Test.java</include></includes></configuration></plugin><!-- cobertura插件 --><plugin><groupId>org.codehaus.mojo</groupId><artifactId>cobertura-maven-plugin</artifactId><version>2.4</version></plugin><!-- war插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-war-plugin</artifactId><version>2.1</version><configuration><warName>${project.artifactId}</warName></configuration></plugin><!-- resource插件, 设定编码 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-resources-plugin</artifactId><version>2.4.3</version><configuration><encoding>${project.build.sourceEncoding}</encoding></configuration></plugin><!-- jar插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><version>2.3.1</version><configuration><archive><manifest><addDefaultImplementationEntries>true</addDefaultImplementationEntries><addDefaultSpecificationEntries>true</addDefaultSpecificationEntries></manifest></archive></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-source-plugin</artifactId><version>2.1.2</version></plugin><!-- clean插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-clean-plugin</artifactId><version>2.4.1</version></plugin><!-- install插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-install-plugin</artifactId><version>2.3.1</version></plugin><!-- deploy插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-deploy-plugin</artifactId><version>2.5</version></plugin><!-- eclipse插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-eclipse-plugin</artifactId><version>2.5.1</version><configuration><sourceExcludes><sourceExclude>**/.svn/</sourceExclude></sourceExcludes><downloadSources>true</downloadSources></configuration></plugin><!-- 依赖jar包插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-dependency-plugin</artifactId><version>2.1</version><configuration><outputDirectory>${basedir}/src/main/webapp/WEB-INF/lib</outputDirectory></configuration></plugin></plugins></build>

?还有一些其他的设置,这里就不讲了,那个更麻烦,我还没研究明白,呵呵。

剩下的工作就简单了,我们的项目架子已经建好,现在就是要把建好的项目在eclipse下进行开发,所以我们也要做最重要的一步:

@echo offset curdir=%~dp0set partition=%curdir:~0,1%echo 工程目录:%curdir%%partition%:cd %curdir%echo 清理工作call mvn clean eclipse:cleanecho 构建eclipse工程环境,下载JAR源代码,将项目订制为web项目call mvn eclipse:eclipse -DdownloadSources=true -Dwtpversion=2.0echo 生成工程依赖JAR包,放到WEB-INF/libecho 删除 %curdir%src\main\webapp\WEB-INF\lib\ 下面的jar包cd %curdir%src\main\webapp\WEB-INF\lib\del *.jarcd %curdir%call mvn dependency:copy-dependenciesecho MAVEN工程构建完成pause

读书人网 >软件开发

热点推荐