我对 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/