在查看代码的某个时候,我看到许多方法都指定了注释:
@SuppressWarnings("unchecked")
Run Code Online (Sandbox Code Playgroud)
这是什么意思?
我正在处理代码,并使用warnings
库抛出了很多(对我而言)无用的警告.阅读(/扫描)文档我只发现了一种禁用单个函数警告的方法.但我不想改变这么多的代码.
可能有旗帜python -no-warning foo.py
吗?
你会推荐什么?
我正在使用pyVmomi在Python2.6中编写脚本,并使用其中一种连接方法:
service_instance = connect.SmartConnect(host=args.ip,
user=args.user,
pwd=args.password)
Run Code Online (Sandbox Code Playgroud)
我收到以下警告:
/usr/lib/python2.6/site-packages/requests/packages/urllib3/connectionpool.py:734: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html
InsecureRequestWarning)
Run Code Online (Sandbox Code Playgroud)
有趣的是,我没有使用pip安装urllib3(但它位于/usr/lib/python2.6/site-packages/requests/packages/urllib3/).
我按照这里的建议尝试过
import urllib3
...
urllib3.disable_warnings()
Run Code Online (Sandbox Code Playgroud)
但这并没有改变任何事情.
@SuppressWarnings
Java 中有效警告名称的列表是什么?
进来之间的("")
位@SuppressWarnings("")
.
我从第三方代码中得到了很多这些警告,我无法修改.有没有办法禁用此警告或至少禁用某些区域(如VC++中的#pragma push/pop)?
例:
list.h:1122: warning: `list<LogOutput*, allocator<LogOutput*> >::node_alloc_' will be initialized after
list.h:1117: warning: `allocator<LogOutput*> list<LogOutput*, allocator<LogOutput*> >::alloc_'
Run Code Online (Sandbox Code Playgroud) 对于PMD,如果要忽略特定警告,可以使用// NOPMD
该行来忽略该行.
FindBugs有类似的东西吗?
所以问题是能够结合多个警告抑制,以便每个项目不需要它自己的@SuppressWarnings
注释.
例如:
public class Example
public Example() {
GO go = new GO(); // unused
....
List<String> list = ( List<String> ) go.getList(); // unchecked
}
...
// getters/setters/other methods
}
Run Code Online (Sandbox Code Playgroud)
现在@SuppressWarnings
我没有两个警告,而是在课堂上有两个警告,所以这样:
@SuppressWarnings( "unused", "unchecked" )
public class Example
public Example() {
GO go = new GO(); // unused - suppressed
....
List<String> list = ( List<String> ) go.getList(); // unchecked - suppressed
}
...
// getters/setters/other methods
}
Run Code Online (Sandbox Code Playgroud)
但这不是一个有效的语法,有没有办法做到这一点?
我有一个项目使用log4cxx,boost等库,其头文件生成大量(重复)警告.有没有办法抑制来自库包含的警告(即#include <some-header.h>)或包含某些路径?我希望像往常一样在项目代码中使用-Wall和/或-Wextra而不会隐藏相关信息.我目前在make输出上使用grep,但我想要更好的东西.
有没有办法抑制Xcode中的警告?
例如,我调用一个未记录的方法,因为该方法不在标题中,我在编译时收到警告.我知道我可以将它添加到我的标题中以停止警告,但我想知道除了将其添加到标题之外是否有其他方法(所以我可以保持标题清洁和标准)来抑制警告?一个pragma或什么?
我正在使用一个解析器生成器,它创建了一些丑陋的代码.因此,我的Eclipse项目有几十个警告来自生成的源文件.我知道我可以使用@SuppressWarning
注释来抑制特定元素中的特定警告,但是当解析器生成器再次运行时,我手动添加的任何注释都将丢失.有没有办法配置Eclipse来禁止特定文件或目录的警告?
java ×5
eclipse ×3
warnings ×3
python ×2
annotations ×1
cocoa ×1
cocoa-touch ×1
findbugs ×1
g++ ×1
gcc ×1
gcc-warning ×1
generics ×1
objective-c ×1
python-2.6 ×1
pyvmomi ×1
unchecked ×1
urllib3 ×1
xcode ×1