消除 CXF 生成的代码中对 javax.xml.bind.JAXBElement 的冗余转换<java.lang.Boolean>警告

问题描述 投票:0回答:2

我使用 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);

警告是什么意思,我应该担心吗?由于我已经生成了代码而不是编写了代码,我该怎么做才能消除这个特定的警告?

java warnings cxf
2个回答
1
投票

不,你不应该担心,多余的演员表是无害的。

生成的代码编译时带有警告是很常见的,您通常会忽略它们。 更好的是,将生成的代码编译到单独的 JAR 中,并从主代码中引用它。这样,您就不需要重新编译生成的代码,并且每次都不会看到警告。


0
投票

我在CXF生成代码时遇到了类似的问题冗余转换为byte [],而-Werror-Xlint:all在maven中设置来编译代码

我/我们的一个可能的解决方法是添加:

-Xlint:-cast 抑制警告并保留 -Werror 标志

© www.soinside.com 2019 - 2024. All rights reserved.