我在编译代码时收到一条消息:
Note: H:\Project2\MyGui2.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
如何使用-Xlint:unchecked
重新编译?
答案 0 :(得分:45)
在javac的命令行中指定它:
javac -Xlint:未选中
或者,如果您使用Ant修改您的javac目标
<javac ...>
<compilerarg value="-Xlint"/>
</javac>
如果您使用的是Maven,请在maven-compiler-plugin
<compilerArgument>-Xlint:unchecked</compilerArgument>
答案 1 :(得分:41)
对于 IntelliJ 13.1 ,请转到文件 - &gt; 设置 - &gt; 项目设置 - &gt; 编译器 - &gt; Java编译器,在右侧,Additional command line parameters
输入"-Xlint:unchecked"
。
答案 2 :(得分:17)
我知道这听起来很奇怪,但我很确定这是你的问题:
在MyGui.java中的某个地方,您使用的是通用集合而未指定类型。例如,如果你在某处使用ArrayList,那么你就是这样做的:
List list = new ArrayList();
当你应该这样做时:
List<String> list = new ArrayList<String>();
答案 3 :(得分:17)
在gradle项目中,您可以通过以下方式添加此编译参数:
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
options.compilerArgs << "-Xlint:unchecked"
}
}
答案 4 :(得分:12)
gradle有另一种方法:
compileJava {
options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
}
答案 5 :(得分:3)
在CMD中,写一下:
javac -Xlint:unchecked MyGui2.java
它将显示未经检查或不安全的操作列表。
答案 6 :(得分:3)
如果使用NetBeans之类的IDE,则可以在项目的属性中指定Xlint:unchecked
编译器选项。
只需转到项目窗口,右键单击项目,然后单击Properties
。
在显示的窗口中搜索Compiling
类别,并在标有Additional Compiler Options
的文本框中设置Xlint:unchecked
选项。
因此,每次编译项目时,设置都将保持设置。
答案 7 :(得分:1)
指定Gradle编译器参数的更简洁方法如下:
compileJava.options.compilerArgs = [' - Xlint:unchecked',' - Xlint:deprecation']
答案 8 :(得分:0)
使用-Xlint编译的其他方法:通过命令行取消选中
javac abc.java -Xlint:未选中
它会显示未经检查和不安全的警告。
答案 9 :(得分:0)
对于IntelliJ 15,我们进行这些设置已经改变了,对于更深层次的埋葬来说是新的和改进的!
现在它:文件&gt;其他设置&gt;默认设置&gt; &#39;构建,执行,部署&#39; &GT;编译器&gt; Java编译器
在附加命令行参数中,与之前相同,写入&#34; -Xlint:unchecked&#34;。
答案 10 :(得分:0)
对于Android Studio,将以下内容添加到build.gradle
块中的顶级allprojects
文件中
tasks.withType(JavaCompile) {
options.compilerArgs << "-Xlint:unchecked" << "-Xlint:deprecation"
}