1、MAVEN的安裝和配置
項(xiàng)目地址:
http://maven.apache.org/download.html
下載到的文件:
apache-maven-2.0.9-bin.zip
接壓縮后拷貝到tool下面。配置path中加入:
D:\tool\apache-maven-2.0.9\bin
然后在命令行中輸入:
mvn -version
返回:
Maven version: 2.0.9
Java version: 1.5.0_12
OS name: "windows xp" version: "5.1" arch: "x86" Family: "windows"
maven就安裝好了
maven命令
mvn test:運(yùn)行應(yīng)用程序中的單元測(cè)試
mvn package:依據(jù)項(xiàng)目生成jar文件
mvn install,把包安裝在本地的repository中,可以被其他工程作為依賴來使用
mvn site:生成項(xiàng)目相關(guān)信息的網(wǎng)站
mvn clean:清除目標(biāo)目錄中的生成結(jié)果
mvn eclipse:eclipse:生成Eclipse項(xiàng)目文件
mvn deploy,在整合或者發(fā)布環(huán)境下執(zhí)行,將最終版本的包拷貝到遠(yuǎn)程的repository,使得其他的開發(fā)者或者工程可以共享。
可以通過對(duì)目標(biāo)及相位的組合使得一個(gè)命令完成多個(gè)功能,比如:
mvn clean dependency:copy-dependencies package
關(guān)于常用命令的詳解,見參考資料。
2、MYECLIPSE6.5
項(xiàng)目地址:
http://www.myeclipseide.com/
SN:
Subscriber: xiaofei
Subscription Code: kLR8ZO-655111-53678656277609555
新建WEB項(xiàng)目的時(shí)候ADD MAVEN的支持
3、MAVEN和MYECLIPSE
目前是只用MAVEN來管理JAR包,pom.xml文件如下,刪除其中build的配置:
<?xml version="1.0" encoding="UTF-8"?>
<project
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.sillycat</groupId>
<artifactId>easyview</artifactId>
<packaging>war</packaging>
<name />
<version>0.0.1-SNAPSHOT</version>
<description />
<dependencies>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>activation</artifactId>
<version>1.0.2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.3.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.4</version>
</dependency>
<dependency>
<groupId>freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.9</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.4</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.9</version>
</dependency>
<dependency>
<groupId>com.ibatis</groupId>
<artifactId>ibatis2-dao</artifactId>
<version>2.1.7.597</version>
</dependency>
</dependencies>
</project>
運(yùn)行如下命令:
mvn clean dependency:copy-dependencies
會(huì)生成target/dependency目錄,將jar包拷貝到dependency目錄
還是使用ant來編譯打包,其實(shí)這樣比較土,不過自己用起來比較熟悉。先用
mvn clean dependency:copy-dependencies
然后用
ant war 打包,兩個(gè)過程了。。。。
build.xml如下:
<!-- modified by sillycat.luohua 2008.06.27 -->
<project name="easyview" default="compile" basedir=".">
<!-- set global properties for this build -->
<!-- 項(xiàng)目名字 -->
<property name="project" value="easyview" />
<!-- 源代碼路徑 -->
<property name="src" location="src/java" />
<!-- 所有的配置文件 -->
<property name="config" location="src/conf" />
<!-- web項(xiàng)目的根 -->
<property name="web" location="WebRoot" />
<!-- web中用到的jar包 -->
<property name="web-lib" location="${web}/WEB-INF/lib" />
<!-- build出class的路徑 -->
<property name="build" location="build" />
<!-- 生成war包和項(xiàng)目部署配置文件的路徑 -->
<property name="dist" location="dist" />
<!-- maven管理的jar包 -->
<property name="maven-jar" location="target/dependency" />
<!-- 編譯項(xiàng)目的classpath設(shè)置 -->
<path id="classpath.compile">
<fileset dir="${web-lib}">
<include name="**/*.jar" />
</fileset>
<pathelement path="${build}" />
</path>
<target name="init">
<!-- 編譯前先生成目錄 -->
<mkdir dir="${build}" />
<mkdir dir="${dist}" />
<copy todir="${web-lib}">
<fileset dir="${maven-jar}" includes="*.jar">
</fileset>
</copy>
</target>
<target name="compile" depends="init" description="compile the source">
<mkdir dir="${build}/classes" />
<!-- Compile the java code from ${src} into ${build} -->
<javac srcdir="${src}" destdir="${build}/classes" debug="true" deprecation="true" optimize="false" failonerror="true" encoding="utf-8">
<classpath refid="classpath.compile" />
</javac>
</target>
<!-- 拷貝頁面資源到build中 -->
<target name="copyWebFiles" depends="compile">
<mkdir dir="${build}/web" />
<copy todir="${build}/web">
<fileset dir="${web}" excludes="WEB-INF/classes/">
</fileset>
</copy>
<copy todir="${build}/web/WEB-INF/classes">
<fileset dir="${build}/classes">
</fileset>
<fileset dir="${config}">
<exclude name="**/easyview.properties" />
</fileset>
</copy>
</target>
<!-- 拷貝配置資源給本機(jī)測(cè)試用 -->
<target name="config4debug">
<copy file="${config}/easyview.properties" tofile="${dist}/easyview.properties" />
</target>
<!-- 拷貝配置資源給發(fā)布用 -->
<target name="config4release">
<copy file="${config}/easyview.properties" tofile="${dist}/easyview.properties" />
</target>
<!-- 生成war包 -->
<target name="buildWar">
<mkdir dir="${dist}" />
<war destfile="${dist}/${project}.war" webxml="${build}/web/WEB-INF/web.xml">
<fileset dir="${build}/web" />
</war>
</target>
<!-- 打包給本機(jī)測(cè)試 -->
<target name="war" depends="clean,copyWebFiles,config4debug,buildWar" description="generate the war package for personal debug">
</target>
<!-- 打包給發(fā)布使用 -->
<target name="release" depends="clean,copyWebFiles,config4release,buildWar" description="generate the war package for release">
</target>
<!-- 編譯打包前先清空 -->
<target name="clean" description="clean up">
<!-- Delete the ${build} and ${dist} directory trees -->
<delete dir="${build}" />
<delete dir="${dist}" />
</target>
</project>