m2eclipse是Eclipse的Maven插件,界面上可设置修改资源文件或Update Project Configuration后,触发Maven Lifecycle,相当于为扩展工程特定的需求提供了可能。比如:修改源码或配置文件后,将编译结果复制到应用服务器的部署目录下,都可以用自动化方式来实现。
(1)Windows -> Preferences -> Maven,设置Update Project Configuratoin时触发的Maven Lifecycle
(2)Maven工程右键 -> Properties -> Maven -> Lifecycle Mapping,设置修改Maven工程资源文件时触发的Maven Lifecycle
m2eclipse插件上,默认绑定的Maven生命周期是process-resources。结合m2eclipse触发pom.xml中绑定的Maven生命周期来实现特殊的需求,如下:
当process-resource阶段时,将Maven工程类路径下的类复制到应用服务器的部署目录下。
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-antrun-plugin</artifactId> <version>1.7</version> <executions> <execution> <id>dev-deploy</id> <phase>process-resources</phase> <goals> <goal>run</goal> </goals> <configuration> <target> <copy todir="${deploy.home}/WEB-INF/classes" overwrite="true" failonerror="false"> <fileset dir="${project.basedir}/target/classes" /> </copy> </target> </configuration> </execution> </executions> </plugin> </plugins> </build>
上面的原理很简单,但实现时发现当修改源码保存后,并未触发pom.xml里绑定到process-resoures生命周期的maven-antrun-plugin插件复制文件。
但执行mvn package或右键 -> Maven -> Update Project Configurate时,都可以触发maven-antrun-plugin插件复制文件。只是在Eclipse上修改源码后,并不能触发复制文件。后来发现修改src/main/resources下的资源文件,是可以触发复制文件的。
主要问题出在,Eclipse下的源码m2eclipse不认为是资源文件,所以修改了也不会触发process-resources复制文件。但可以让m2eclipse将源码当作是资源文件来解决,方法就是在pom.xml中将src/main/java声明为资源文件,如下:
<build> <resources> <resource> <directory>src/main/java</directory> <filtering>false</filtering> <excludes> <exclude>**</exclude> </excludes> </resource> <resources> </build>做完以上resource声明,就可以实现Eclipsed中修改完源码后m2eclipse触发自动复制文件了,这是个小技巧,但不知道时真让人抓狂

相关推荐
同时,通过"Maven" -> "Build..."可以自定义构建目标,如执行clean、install等生命周期阶段。 4. **依赖管理** m2eclipse提供了一个直观的依赖图,帮助开发者查看和管理项目中的依赖关系。在项目浏览器中右键单击...
2. **构建生命周期**:Maven定义了标准的构建生命周期,包括清理、编译、测试、打包、集成测试、验证、安装和部署等阶段,用户可以根据需要执行特定的构建目标。 3. **插件系统**:Maven通过插件执行具体的构建任务...
4. **构建生命周期**:提供了Maven的构建生命周期,如编译、测试、打包、部署等,可以在Eclipse内部直接触发。 5. **编辑POM.xml**:提供了图形化的POM编辑器,方便修改项目配置。 6. **聚合项目**:支持Maven的多...
2. **构建生命周期集成**:在Eclipse内部,你可以触发Maven的生命周期阶段,如`clean`、`compile`、`test`、`install`和`deploy`,这使得开发流程更为流畅。 3. **依赖管理**:m2eclipse自动处理Maven依赖,确保...
2. **构建生命周期**:m2eclipse将Maven的构建生命周期集成到Eclipse的工作流中,允许用户在IDE内部执行诸如编译、测试、打包和部署等操作。 3. **项目结构**:它会根据Maven的标准目录结构自动创建Eclipse项目,如...
6. **构建和运行**: 右键点击项目,选择“Run As” > “Maven Build”,可以指定Maven的目标(如install或clean),Eclipse会执行对应的Maven生命周期阶段。 **四、Eclipse-Maven插件的高级特性** - **自动编译和...
在实际使用中,`m2eclipse-egit-master`可能是一个包含M2Eclipse EGit源代码的项目,开发者可以通过研究这个项目了解其内部实现,包括如何与Maven生命周期集成、如何调用EGit API进行版本控制操作等。 总之,M2...
5. **生命周期与构建生命周期绑定**:Eclipse集成了Maven的生命周期,如编译(compile)、测试(test)、打包(package)和安装(install),可以在Eclipse内触发这些阶段。 6. **更新项目配置**:当POM发生变化时...
3. **构建生命周期**:插件支持Maven的完整构建生命周期,如清理、编译、测试、打包、验证等,用户可以直接在Eclipse中触发这些生命周期阶段。 4. **编辑POM.xml**:Eclipse M2E提供了POM编辑器,帮助用户更方便地...
通过一系列生命周期和插件,Maven 能够自动完成项目的编译、测试、打包、部署等一系列任务。 #### 二、下载Maven 首先,我们需要从官方网站下载 Maven 的安装包。根据提供的描述中的下载地址...
Maven的主要优势在于其标准化的构建生命周期和依赖管理机制,这使得开发者可以更加专注于业务逻辑而非构建过程。 **Maven下载和运行** Maven可以从官方网站下载最新的稳定版本。通常下载的是一个压缩包,将其解压...
### Maven生命周期 Maven的生命周期是其核心组成部分,主要包括三个阶段:`clean`、`default`(或`compile`)、`site`。`clean`阶段用于清理项目,`default`阶段负责编译、测试、打包、验证和部署,而`site`阶段则...
Maven生命周期** Maven的生命周期是一系列必须按照顺序执行的目标集合。每个生命周期包含一系列阶段,例如`validate`、`compile`、`test`等。这些阶段可以由Maven命令触发。 **4. 跳过测试** 在执行Maven命令时...
它内置了一系列默认的构建生命周期和依赖管理系统,使得项目构建过程更加标准化和自动化。例如,开发者不再需要手动编写复杂的构建脚本来完成代码编译、打包或部署等任务,而只需通过简单的命令即可完成这些操作。 ...
Maven是一个项目管理和综合工具,它管理项目依赖关系,构建生命周期,以及项目信息。以下为安装步骤: 1.1 下载 Maven:访问Apache Maven官方网站下载最新版本的Maven,根据操作系统选择对应的二进制包。 1.2 安装...
3. **构建生命周期集成**:可以在Eclipse内部执行Maven的生命周期命令,如clean、compile、test、install和deploy等。 4. **源码导航**:如果库的源码可用,m2e会自动链接到源码,便于调试和学习。 5. **错误和...
Maven2的生命周期包括一系列阶段,如`compile`、`test`、`package`、`install`等。这些阶段按顺序执行,构建过程中的任何一步都可以通过Maven命令手动触发或通过自动化工具自动执行。 - `mvn compile`:编译Java源...
Maven 有三个主要的生命周期:`clean`、`default` 和 `site`。其中,`default` 生命周期是最常用的,包括 `validate`、`compile`、`test`、`package`、`install` 和 `deploy` 这些阶段。开发者可以通过执行不同的...
这个命令会触发Maven的生命周期,执行到package阶段,最终生成包含所有依赖的可执行Jar文件。生成的文件通常位于target目录下。 4. 运行打包好的Jar文件。有两种方式可以运行打包好的Jar文件: - 在命令行中,...