本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wolffool/archive/2011/03/24/6275603.aspx
一、排除传递依赖的某个jar,以避免版本冲突。例如: 开发工程中需要引用struts2(2.0.11.2)和freemarker(2.3.16),但该struts2默认依赖的是freemarker(2.3.8),可参考以下方式编写:
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.0.11.2</version>
<type>jar</type>
<scope>compile</scope>
<exclusions>
<exclusion> <!-- 排除freemarker,以避免版本冲突 -->
<groupId>freemarker</groupId>
<artifactId>freemarker</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.16</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
二、发布jar包同时发布源码
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.2</version>
<configuration>
<attach>true</attach>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
三、Eclipse开发时,为方便使用内置tomcat调试,需将所依赖的jar包复制到WEB-INF/lib目录下。可通过以下配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.1</version>
<executions>
<execution>
<id>copy</id>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>src/main/webapp/WEB-INF/lib</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
配置完成后。每次有添加jar包依赖时,需运行一次mvn package命令。
四、有时工程中想复用其它工程中的静态内容(image/css/js),为方便开发调试,需将相应的静态内容,解压缩到当前工程的webapp目录下。可通过以下配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.1</version>
<executions>
<execution>
<id>copy-statics</id>
<phase>generate-resources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>com.yihaodian.front</groupId>
<artifactId>front-global</artifactId>
<version>1.0-SNAPSHOT</version>
<classifier>statics</classifier>
<type>zip</type>
<overWrite>true</overWrite>
<outputDirectory>src/main/webapp</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
配置完成后,需运行一次mvn generate-resources命令。
分享到:
相关推荐
**李兴华maven配置与使用** Maven是一款强大的项目管理工具,主要应用于Java开发领域。它通过统一的构建过程,简化了项目的构建、依赖管理和文档生成,使得开发者能够更专注于代码本身。以下是对Maven配置与使用的...
2. **生命周期与构建阶段**:Maven有三个主要的生命周期:clean(清理)、default(构建)和site(生成站点)。常用命令如`mvn clean`用于清理目标目录,`mvn compile`编译源代码,`mvn test`运行测试,`mvn package...
本文将深入解析Maven配置的核心要素,包括`settings.xml`文件的详细解读、代理设置的全面指导、依赖排除的实用技巧以及Maven命令行参数的应用示例,帮助读者掌握Maven配置的精髓。 ### Maven配置之`settings.xml` ...
首先,让我们从Maven配置开始。Maven通过使用POM(Project Object Model)文件来管理项目的依赖关系,简化了构建过程。在IntelliJ IDEA中配置Maven,你需要: 1. 打开IntelliJ IDEA,进入“File” -> “Settings”...
** Maven学习记录(一):安装与环境...正确的安装和配置是使用Maven的前提,而掌握其基本操作和配置技巧则能更高效地进行项目开发。随着对Maven的深入学习,你将发现它在自动化构建、版本管理和持续集成等方面的价值。
通常,开发者会创建多个Maven配置文件(profiles),每个文件对应一个特定的环境,然后通过filtering功能过滤资源文件中的变量,实现环境间配置的切换。 【标签】:“源码 工具” “源码”标签暗示了讨论可能涉及...
本文将详细介绍Maven的下载与安装步骤,并提供一些实用的小技巧。 #### 二、准备工作 在开始安装Maven之前,确保已经安装了JDK 1.7或更高版本。这是因为Maven是基于Java语言开发的,所以需要一个Java运行环境。...
10. **Maven 配置技巧**:分享一些实用的 Maven 配置技巧,如如何改变默认的编译源码和目标版本,以及如何自定义输出目录。 通过这个精品教程,你将能够熟练地使用 Maven 来管理和构建你的Java项目,提高开发效率,...
### Maven 的下载、安装与配置详解 Maven是一款强大的项目管理和构建自动化工具,主要用于Java项目的构建、依赖管理和项目信息管理。下面将详细介绍Maven的下载、...希望本指南能帮助大家更好地掌握Maven的使用技巧。
这个文档可能包含了关于Maven3.3.9的使用技巧、常见问题解答或特定构建场景的配置示例,可以帮助用户更好地理解和使用Maven。可能包括如何自定义Maven的构建过程、如何处理复杂的依赖关系、如何配置插件等实用内容。...
### Maven安装与配置详解 #### 一、Maven简介 ...通过上述步骤和技巧,您可以成功地安装配置Maven,并开始享受Maven带来的便利。无论是对于个人开发者还是大型开发团队,Maven都是一个不可或缺的工具。
- **全面覆盖 Maven**: 从基础知识到高级技巧,本书提供了全面的 Maven 指南。 - **最佳实践**: 介绍如何在实际项目中运用 Maven,包括如何优化构建过程、管理依赖关系等。 - **集成工具**: 讲解如何将 Maven 与其他...
【标签】:“源码”和“工具”这两个标签暗示了内容可能涵盖了如何使用Maven处理源代码,例如编译、测试和打包,以及Maven作为开发工具的使用技巧。 【详细说明】 1. **Maven的项目对象模型(POM)**:POM是Maven的...
2. **插件管理**:Maven的插件管理系统得到了加强,允许更灵活地配置和管理插件版本,减少了构建冲突的可能性。 3. **依赖管理**:3.5.2增强了依赖解析机制,能更准确地处理传递性依赖,避免了版本冲突。 4. **...
3. **Eclipse集成Maven配置** - 新版Eclipse(如m2eclipse插件)已内置Maven支持。若使用旧版本,可通过Eclipse Marketplace在线安装"Maven Integration for Eclipse"插件。 - 在Eclipse中配置Maven,包括增加...