Java和Maven构建器如何在Eclipse中一起工作?


问题内容

我能正确理解吗,Java生成器将scr路径上的源重新编译为输出路径,如果激活了自动构建或通过“ ctrl + b”或抛出javac的验证错误,通常会在每个“
ctrl + s”之后发生。

至于Maven2Bulder。我只是克隆了m2e-core
git存储库,并且有相应的类org.eclipse.m2e.core.internal.builder.MavenBuilder,这是相当复杂的东西。

<projectDescription>
    <name>modeshape-example-repositories</name>
    <comment></comment>
    <projects>
    </projects>
    <buildSpec>
        <buildCommand>
            <name>org.eclipse.jdt.core.javabuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
        <buildCommand>
            <name>org.eclipse.m2e.core.maven2Builder</name>
            <arguments>
            </arguments>
        </buildCommand>
    </buildSpec>
    <natures>
        <nature>org.eclipse.m2e.core.maven2Nature</nature>
        <nature>org.eclipse.jdt.core.javanature</nature>
    </natures>
</projectDescription>

我以为它会得到pom.xml,有关回购位置和settings.xml的m2eclipse变量或一些配置文件信息以及当前Run配置的目标/目标,并且它只是使用这些信息来运行mvn,但它的功能还很多,它可以产生意外行为。

顺便说一句,它仅在开发人员实际上以“某些目标”运行时使用吗?


问题答案:

Maven构建器的主要目的是确保POM文件的正确性,并下拉所需的依赖项。如果保存了POM文件,它将退出并检查新的依赖关系,当找不到依赖关系时,它将报告错误。

另外,在从Eclipse中对项目Preferences -> Maven->Goal to run after updating project configuration执行操作Project->Clean...或更改POM文件并从Eclipse中保存之后,Maven构建器将运行达到您设定的目标的Maven构建。

Java Builder仍然负责构建项目并在“问题”视图中报告编译器错误,以便为Eclipse中的内置jUnit运行器提供输入。