【问题标题】:Netbeans & Maven: different compilation behaviorNetbeans & Maven:不同的编译行为
【发布时间】:2011-03-28 05:23:14
【问题描述】:

我正在使用 Netbeans 和 Maven 项目。
在某些情况下,Netbeans 显示编译失败(红色气球)但 Maven 编译所有内容都没有任何问题!

造成这种差异的原因可能是什么。 我已经检查过两者都使用相同的 JDK 版本。

【问题讨论】:

  • 那么,编译失败是怎么回事? Netbeans 使用 Ant 构建其项目,因此您只需阅读 Ant 文件即可查看构建项目时发生的情况。或者,您可以将您的 Maven 脚本切换到 Ant,然后无论您是否在 Netbeans 中构建,您都可以使用相同的脚本。
  • 在哪里可以找到 Netbeans 使用的 Ant 文件?
  • 在您的 nbproject 目录中查找 build-impl.xml 文件。

标签: java maven-2 netbeans


【解决方案1】:

需要更多细节才能进行更深入的分析。

在大多数情况下,cmdline 和 netbeans 编辑器之间的编译错误差异可能是由于缺少源根(读取生成的源根 - 请参阅项目属性源面板了解如何设置源根)。

netbeans 正在嵌入一个旧的 svn HEAD 快照 maven 二进制文件,因此在一些非常罕见的情况下,解析依赖关系树可能会有所不同,但我还没有看到这种情况。

netbeans 编译器也没有选择编译器插件上定义的大部分开关 除了目标/源,编码。

netbeans 编辑器编译器与 jdk 编译器不是 100% 兼容,并且存在不兼容的情况,所以我们回到需要先查看实际错误的需求。..

【讨论】:

    【解决方案2】:

    尝试这样做,在您的项目目录中的命令行中执行一次mvn install,然后在您的 netbeans IDE 中重新打开或重新加载该项目(我希望您使用的是 6.9?)。

    这将在您的本地存储库中安装所有工件。

    如果您的 maven 项目中有模块并且它们相互依赖,通常会发生这种情况。

    【讨论】:

    • 这正是我的工作方式(通过命令行或通过 nbactions 调用 maven)......无论我打开/重新打开项目,netbeans 都会向我显示 Maven 未引发的错误。一切都像 Netbeans 和 Maven 一样发生,不使用相同的 JDK 或编译选项...
    【解决方案3】:

    一个可能的原因可能是您没有在您的网络 bean 类路径中添加所需的 jar。但是 jar 列在您的 maven pom.xml 中

    【讨论】:

    • 您可以提供更多信息或至少提供错误详细信息
    • 使用 Maven 项目时,我们无法为 netbeans 项目属性设置类路径... Maven 集成使 netbeans 使用 pom.xml 中依赖项中指定的所有 jar 进行编译我错过了什么吗?跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-08-26
    • 1970-01-01
    • 2014-08-09
    • 1970-01-01
    • 2021-05-03
    • 2021-11-02
    • 2020-10-21
    相关资源
    最近更新 更多