我使用来自WSDL文件的CXF生成一些代码。使用带有标志-Xlint的版本“1.6.0_16”编译代码时,我收到以下警告:
warning: [cast] redundant cast to javax.xml.bind.JAXBElement<java.lang.Boolean>
[javac] this.r = ((JAXBElement<Boolean> ) value);
警告意味着什么,我应该担心吗?由于我已经生成并且没有编写代码,我可以做些什么来摆脱这个特定的警告?
答案 0 :(得分:1)
不,你不应该担心,多余的演员表是无害的。
通过警告编译生成的代码很常见,通常只是忽略它们。更好的是,将生成的代码编译成单独的JAR,并从主代码中引用它。这样,您不需要重新编译生成的代码,并且每次都不会看到警告。
答案 1 :(得分:0)
我有一个类似的问题,而CXF生成代码冗余强制转换为byte [] ,而 -Werror 和 -Xlint:all 已设置在maven中编译代码
我/我们可能的解决方法是添加:
-Xlint:-cast 以取消警告并保留-Werror标志