Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 全局抑制Eclipse中的警告类型_Java_Eclipse_Suppress Warnings - Fatal编程技术网

Java 全局抑制Eclipse中的警告类型

Java 全局抑制Eclipse中的警告类型,java,eclipse,suppress-warnings,Java,Eclipse,Suppress Warnings,我有一个使用Eclipse开发的Java应用程序。我收到数百条警告,都是由于以下原因: ArrayListlist=newarraylist() 生成ArrayList是原始类型的警告,因为我在分配ArrayList本身时没有包含类型说明符。有没有办法在Eclipse中全局抑制此警告,而不是添加@SuppressWarning注释 我担心我错过了一个警告,因为所有这些原始类型的警告可能更有价值。可以通过导航来更改设置- project properties -> Java Compiler

我有一个使用Eclipse开发的Java应用程序。我收到数百条警告,都是由于以下原因:

ArrayListlist=newarraylist()

生成ArrayList是原始类型的警告,因为我在分配ArrayList本身时没有包含类型说明符。有没有办法在Eclipse中全局抑制此警告,而不是添加@SuppressWarning注释


我担心我错过了一个警告,因为所有这些原始类型的警告可能更有价值。

可以通过导航来更改设置-

project properties -> Java Compiler -> Errors/Warnings -> Generics types
启用-启用特定于项目的设置


将警告更改为忽略。

您可以使用
-Xlint:unchecked
命令行选项,但这将与
@SuppressWarnings(“unchecked”)
相同,顺便说一句,可以将其放在单独的分配上,如

@SuppressWarnings("unchecked") 
ArrayList< SomeType > list = new ArrayList();
@SuppressWarnings(“未选中”)
ArrayListlist=new ArrayList();
但是,我强烈建议在可能的情况下修复这些警告,并且仅在您确定的特定情况下抑制它们。

只需这样做-

@SuppressWarnings("rawtypes")
ArrayList< SomeType > list = new ArrayList();
@SuppressWarnings(“rawtypes”)
ArrayListlist=new ArrayList();

警告将被删除。

我在包含大量生成文件的目录中遇到此问题。在这种情况下,每个目录都可以关闭警告。在PackageExplorer中,右键单击目录,然后选择

Properties -> Java Compiler -> Ignore optional compile problems

请注意,这也会关闭其他警告-但对于生成的代码,无论如何都必须通过更改生成器来修复这些警告。

为什么不修复原始类型警告?因为我知道我不想被警告。我很少显式地键入分配的泛型,因为它只是一个编译时限制IIRC。我只是不想让如此多的警告掩盖我真正关心的那些。好吧,你应该尽可能使用原始类型。根据规范:
强烈反对在Java编程语言中引入泛型后编写的代码中使用原始类型。Java编程语言的未来版本可能会禁止使用原始类型。