如何阻止NetBeans生成大量与此类似的构建警告? 警告:支持的源版本' RELEASE_7'来自注释处理器&org.netbeans.modules.openide.util.NbBundleProcessor'少于-source' 1.8'
最终,我想构建没有构建警告的项目。如果有人有办法,我很想听。
尽管多年来有人抱怨这些警告,但没有已知的编译器标志来阻止这些警告。我尝试过没有成功的解决办法,而且我研究了太多的技术博客(这里有一些更有用的): JDK-7184902:"支持的源版本......"警告应该是-Xlint意识到 - http://bugs.java.com/view_bug.do?bug_id=7184902 JDK-8037955:"支持的源版本......"警告应该是-Xlint意识到 - http://bugs.java.com/view_bug.do?bug_id=8037955 错误210286 - 使用-source 7时注释处理器发出的警告 - https://netbeans.org/bugzilla/show_bug.cgi?id=210286 来自注释处理器的org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor支持的源版本RELEASE_6小于source1.7 - Supported source version RELEASE_6 from annotation processor org.eclipse.persistence.internal.jpa.modelgen.CanonicalModelProcessor less than source1.7
目前为止最好的选择是尝试实现AntLogger(使用Bug 210286文章中提到的方法以及它们为位于https://netbeans.org/bugzilla/attachment.cgi?id=122191的SuppressionFilterAntLogger.java提供的源代码)。
在Ant模块上添加依赖项不起作用。显然,Ant模块被认为是"排除模块",所以我不能让NetBeans使用小红灯泡图标为我添加import语句。以下是使项目编译所需的内容(经过大量的研究和实验来解决这个问题): 右键单击模块应用程序的根节点,选择“项目属性”,然后单击其“库”选项卡。在“平台模块”列表中,滚动到以下每个列表条目,然后选中“包含”复选框。每当我们选择一个平台模块时,我们都会收到一些错误消息(位于对话窗口的底部)关于"但是这被排除在",所以我们寻找那个模块并继续前进,直到它包含了所有内容它需要。 选中/启用以下列表条目的包含复选框: extide |蚂蚁 extide | Java选项 ide | Navigator API ide |项目API ide |项目UI ide | Project UI API ide |项目索引桥 ide | XML Tools API javafx(即选择javafx集群中的所有条目) 平台|执行API 取消选中/禁用以下列表条目的“包含”复选框: 平台| JavaFX包装器 现在我们可以按下Resolve按钮(之前已禁用)。 重新启动NetBeans IDE(因为它没有完全使用我们在没有完全重启的情况下所做的更改)。
在完成所有这些之后,我终于成功编译了SuppressionFilterAntLogger类......但是NetBeans没有触发它的任何方法(我仍然得到RELEASE_7构建警告)!
我在Microsoft Windows 7 Professional上使用Java 8u66和NetBeans IDE 8.0.2。我正在使用NetBeans平台模块应用程序试验此AntLogger,但Java构建警告发生在各种项目中。
答案 0 :(得分:0)
如果您实际上没有使用lambda等JDK 8功能。您可以使用最新的JDK,但仍在属性源中将源级别设置为1.7。您的代码可以使用1.8中的类,但不能使用lambda等。