java - Maven和m2e-Eclipse-Plugin如何配合

标签 java eclipse maven m2eclipse m2e

我对 m2e-Eclipse-Plugin 有一些疑问。 m2e版本为1.6,Eclipse版本为4.5(Mars)。

在我的 Eclipse 工作区中,我有一个部署在本地 Tomcat 服务器上的 Maven 项目(Java Web 应用程序)。

我真的很想知道 m2e-Plugin 和 Maven 如何协同工作。如果我更改 Java 文件并保存它,mvn-target-directory 中相应的类文件会立即更新。

此编译是由 Eclipse 中的默认 Java-Builder 完成还是由 Maven 完成? (即 mvn-compile-plugin 进行编译)。如果后一种情况成立,那么编译目标是如何执行的?

如果更改并保存 Java 文件,我可以配置执行哪些 mvn 目标吗?如果编译是由Java Builder完成的,那么Builder如何知道它必须复制编译后的文件? 文件到 mvn-target-directory ?

我发现了两个帖子:

How do Java and Maven builders work together in eclipse?

How do I start Maven "compile" goal on save in Eclipse?

处理类似的问题。但大多数建议的配置设置在我的 Eclipse 中不起作用。

最佳答案

您的场景中的编译是由 Eclipse 编译器完成的,而不是由 Maven 或 maven-compiler-plugin 完成。 M2E 将所有内容映射到 Eclipse 内部,以处理在 Eclipse 内工作所需的大部分内容。

在使用 M2E 将 Maven 项目初始导入 Eclipse 期间(创建 .project/.classpath/.settings),生命周期将一直运行到 generate-resources 为止,因此会运行一些插件可以创建其他东西(如 ANTLR/JAXB 生成器等)。 Eclipse 通过读取 pom.xml 文件来处理正确的目标文件夹,并通过 M2E 将其转换为 Eclipse 的配置等。您引用的有关配置的内容根本不起作用,因为这些帖子太旧了......

关于java - Maven和m2e-Eclipse-Plugin如何配合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38396081/

相关文章:

java - Spring-Maven Project : Unsupported major.次要版本52.0顽固错误

macos - playn 不玩 mvn,具有讽刺意味的是

java - 在 tomcat 中优雅地关闭 spring 批处理作业

java - 将 Logistic 回归损失函数转换为 Softmax

java - neo4j 程序取决于已签名的 jar (mapdb)

c++ - 强制 Eclipse 将 .c 文件视为 C++

Android 模拟器无法按预期工作

java - java中无法解决错误,有什么解决办法吗?

java - 为什么javax.annotation包在jdk 8中没有类型注释?

java - Gradle + Box2D b2PolygonShape+ Java(TM) SE 二进制文件