我正在使用Netbeans和Maven项目。
在某些情况下,NetBeans会显示我编译失败(红色气球),但Maven编译一切都没有任何问题!Netbeans&Maven:不同的编译行为
这可能是造成这种差异的原因。 我已经检查过两者都使用相同的JDK版本。
我正在使用Netbeans和Maven项目。
在某些情况下,NetBeans会显示我编译失败(红色气球),但Maven编译一切都没有任何问题!Netbeans&Maven:不同的编译行为
这可能是造成这种差异的原因。 我已经检查过两者都使用相同的JDK版本。
一个可能的原因可能是您没有在net bean类路径中添加所需的jar。但jar被列在您的maven pom.xml中
您可以提供更多信息或至少提供错误的详细信息 – Kamal 2010-08-11 07:26:07
使用Maven项目时,我们无法为netbeans项目属性设置classpath ... Maven集成使netbeans能够在pom.xml中的依赖关系中指定的所有jar进行编译 我错过了什么吗? – 2010-08-11 08:30:48
尝试这样做,在您的项目目录中从命令行执行一次mvn install
,然后在netbeans IDE中重新打开或重新加载项目(我希望您正在使用6.9?)。
这会将所有工件安装在本地仓库中。
这通常发生在您的maven项目中有模块且彼此依赖的情况下。
正是我的工作方式(通过行家通过命令行或nbactions叫)......而且不管我打开/重开项目,NetBeans的告诉我不由的Maven引发的错误。 一切都发生这样的Netbeans和Maven不使用相同的JDK或编译选项... – 2010-08-11 11:05:37
更深入的分析需要一些更多细节。
在大多数情况下CMDLINE和NetBeans编辑器之间的编译错误的差异可以通过缺失源根造成的(读取生成的源根 - 见项目属性的源面板如何设置源根)。
netbeans嵌入了旧的svn HEAD快照maven二进制文件,因此在一些非常罕见的情况下,解析依赖关系树可能存在差异,但我还没有看到这种情况。
此外,NetBeans编译器不会从目标/源编码中除去编译器插件 上定义的大部分开关。
NetBeans编辑器编译器是不是100%的JDK编译器兼容,并且已经出现了不兼容的情况,所以我们又回到了需要首先看到实际的错误..
那么,什么是编译失败? Netbeans使用Ant来构建它的项目,以便您可以阅读Ant文件以了解在构建项目时发生了什么。或者,你可以切换你的Maven脚本蚂蚁,然后你可以使用相同的脚本无论你是从NetBeans中或不建设。 – CurtainDog 2010-08-11 07:52:39
在哪里可以找到Netbeans使用的Ant文件? – 2010-08-11 08:17:38
寻找在你的nbproject文件目录中的build-impl.xml中的文件。 – CurtainDog 2010-08-12 07:53:05