当前位置: 首页 > 面试题库 >

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

龙德海
2023-03-14
问题内容

我能正确理解吗,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运行器提供输入。



 类似资料:
  • 问题内容: 我有一个项目,我现在开始作为Maven项目,但是由于某种原因,它无法正常工作。这是我的pom.xml: 问题答案: 实际上,您的POM看起来有点奇怪: 它缺少Webapp项目的权利。 Maven War插件配置看起来不正确,您只是不需要添加的额外内容。 这是最小pom的样子: 因此,要么修改它,然后更新项目配置( 右键单击 您的项目,然后 右键单击 Maven >更新项目配置)。 或者

  • 我想使用NetBeans的Swing GUI构建器以及Maven项目和java模块。似乎GUI构建器找不到编译的类,如果它们是作为java模块的一部分编译的。它给出了错误“加载组件(...)中的错误不能加载组件类(...)”(参见示例末尾截图中的整个错误) 我把它归结为一个最小的例子,使用Netbeans 11: > 文件>New Project>Java with Maven>Java Appl

  • =>如何正确地将log4j作为Java9的一个模块依赖项包含进来? (我对以下依赖项有相同的问题:需要Hibernate.core;需要Hibernate.jpa.2.1.api;需要JCommander;需要JUnit;需要Reflections;) 到目前为止我所做的: 更新了pom.xml文件中的log4j版本,因为log4j 1.2似乎不能与Java9一起工作(请参阅https://blo

  • 问题内容: Eclipse使用它自己的编译器(ECJ)来编译Java代码。调试使用Eclipse编译的程序更加容易,因为可以立即应用简单的代码更改(通过热代码替换)。 另一方面,Maven使用(默认情况下)oracle JDK,它会生成不同的字节码,从而防止在Eclipse调试会话中进行热代码替换。 因此,如果我打算调试程序,我想在我的maven构建中使用Eclipse ECJ编译器。对我来说,便

  • 问题内容: 我想调试带有测试的Eclipse构建。我试图通过运行>调试配置> Maven Build来运行它。在Base目录中是我的Maven repo目录,带有pom.xml文件,在目标“全新安装”中。当我单击debug时,Eclipse开始构建,运行测试,但它不会在断点处停止。 问题答案: 我发现最简单的方法是: 右键项目 调试为-> Maven构建 … 在目标字段中, 输入-Dmaven.s

  • 我在C++项目中使用Eclipse。我已经在windows中自动禁用了生成,但当我保存项目时,它仍然生成工作区。我该怎么办?