Netbeans&Maven:不同的编译行为

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

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

一个可能的原因可能是您没有在net beans类路径中添加所需的jar。 但是jar正在你的maven pom.xml中列出

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

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

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

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

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

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

除了目标/源代码编码之外,netbeans编译器也不会选择编译器插件上定义的大多数开关。

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