我在我的项目中使用ANT 1.6 /JAX-WS 2.0/Weblogic 11g
。我的构建机器位于JDK7
,但我们的部署机器(包括weblogic)位于JDK6
。现在我在创建war文件时遇到错误。
步骤 - 在build.xml
文件中创建war文件之前:
1)我用JDK7
调用wsimport作为默认java home JDK7
(因为构建机器现在在JDK7
)我在那里设置-Xnocompile
所以源代码不是使用默认JDK7
编译。
2)在执行javac期间,我已经指定了属性[source ="6" target="6" fork="false"|"true"
(一次一个fork的组合)],以使构建与JDK6
兼容。但是,我在读取wsimport生成的代码时遇到错误。
问题是我到目前为止所理解的 - 我们正在从JDK7
进行wsimport并通过将属性设置为JDK6
来编译代码。因此JDK7
执行期间不支持javac
生成的java文件。
我收到类似下面的错误 - 我的ADMIN.java
文件中由wsimport
命令生成的FYI build.xml
文件。
C:\MyProject\src\com\company\abc\xyz\delivery\ws\ADMIN.java:46: cannot find symbol
[javac] symbol : constructor Service(java.net.URL,javax.xml.namespace.QName,javax.xml.ws.WebServiceFeature[])
[javac] location: class javax.xml.ws.Service
[javac] super(__getWsdlLocation(), ADMIN_QNAME, features);<br>
[javac]
答案 0 :(得分:0)
除了更改构建计算机的Java_home选项并指向JDK6或运行的java版本之外,无论如何都无法修复上述问题。