http://maven.apache.org/
$ sudo apt-get install maven2 $ mvn -version Apache Maven 2.2.1 (rdebian-4) Java version: 1.6.0_22 Java home: /usr/lib/jvm/java-6-openjdk/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux" version: "2.6.38-8-generic" arch: "amd64" Family: "unix"
JAVA_HOME="/usr/lib/jvm/java-6-openjdk/jre" MAVEN_HOME="/usr/share/maven2/"
定义 properties
<properties>
<spring.version>4.0.1.RELEASE</spring.version>
</properties>
引用 properties
<!-- Spring dependencies -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
例 2.1. Maven properties
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.javahash.web</groupId>
<artifactId>Spring4MVCHelloWorld</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>Spring4MVCHelloWorld Maven Webapp</name>
<url>http://maven.apache.org</url>
<properties>
<spring.version>4.0.1.RELEASE</spring.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!-- Spring dependencies -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
</dependencies>
<build>
<finalName>Spring4MVCHelloWorld</finalName>
</build>
</project>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.3.24.1</version>
</dependency>
</dependencies>
将编译后的代码打包
$ mvn package
$ ls target/*.war target/www.netkiller.cn-0.0.1-SNAPSHOT.war
$ mvn dependency:copy-dependencies
$ ls target/dependency/ antlr-2.7.7.jar javassist-3.18.1-GA.jar snakeyaml-1.16.jar spring-boot-starter-web-1.3.0.RELEASE.jar spring-webmvc-4.2.3.RELEASE.jar aopalliance-1.0.jar javax.transaction-api-1.2.jar spring-aop-4.2.3.RELEASE.jar spring-boot-starter-websocket-1.3.0.RELEASE.jar spring-websocket-4.2.3.RELEASE.jar aspectjweaver-1.8.7.jar jboss-logging-3.3.0.Final.jar spring-aspects-4.2.3.RELEASE.jar spring-context-4.2.3.RELEASE.jar thymeleaf-2.1.4.RELEASE.jar classmate-1.1.0.jar jboss-logging-annotations-1.2.0.Beta1.jar spring-beans-4.2.3.RELEASE.jar spring-core-4.2.3.RELEASE.jar thymeleaf-layout-dialect-1.3.1.jar dom4j-1.6.1.jar jcl-over-slf4j-1.7.13.jar spring-boot-1.3.0.RELEASE.jar spring-data-commons-1.11.1.RELEASE.jar thymeleaf-spring4-2.1.4.RELEASE.jar groovy-2.4.4.jar jstl-1.2.jar spring-boot-autoconfigure-1.3.0.RELEASE.jar spring-data-jpa-1.9.1.RELEASE.jar tomcat-embed-core-8.0.28.jar hibernate-commons-annotations-4.0.5.Final.jar jul-to-slf4j-1.7.13.jar spring-boot-starter-1.3.0.RELEASE.jar spring-expression-4.2.3.RELEASE.jar tomcat-embed-el-8.0.28.jar hibernate-core-4.3.11.Final.jar log4j-over-slf4j-1.7.13.jar spring-boot-starter-aop-1.3.0.RELEASE.jar spring-jdbc-4.2.3.RELEASE.jar tomcat-embed-logging-juli-8.0.28.jar hibernate-entitymanager-4.3.11.Final.jar logback-classic-1.1.3.jar spring-boot-starter-data-jpa-1.3.0.RELEASE.jar spring-messaging-4.2.3.RELEASE.jar tomcat-embed-websocket-8.0.28.jar hibernate-jpa-2.1-api-1.0.0.Final.jar logback-core-1.1.3.jar spring-boot-starter-jdbc-1.3.0.RELEASE.jar spring-orm-4.2.3.RELEASE.jar tomcat-jdbc-8.0.28.jar hibernate-validator-5.2.2.Final.jar mybatis-3.3.0.jar spring-boot-starter-logging-1.3.0.RELEASE.jar spring-security-config-4.0.3.RELEASE.jar tomcat-juli-8.0.28.jar jackson-annotations-2.6.3.jar mybatis-spring-1.2.3.jar spring-boot-starter-security-1.3.0.RELEASE.jar spring-security-core-4.0.3.RELEASE.jar unbescape-1.1.0.RELEASE.jar jackson-core-2.6.3.jar mysql-connector-java-5.1.37.jar spring-boot-starter-thymeleaf-1.3.0.RELEASE.jar spring-security-web-4.0.3.RELEASE.jar validation-api-1.1.0.Final.jar jackson-databind-2.6.3.jar ognl-3.0.8.jar spring-boot-starter-tomcat-1.3.0.RELEASE.jar spring-tx-4.2.3.RELEASE.jar xml-apis-1.0.b2.jar jandex-1.1.0.Final.jar slf4j-api-1.7.13.jar spring-boot-starter-validation-1.3.0.RELEASE.jar spring-web-4.2.3.RELEASE.jar