由于 JDK 7 中的 wsimport 和 JAVA 支持 JDK 6 导致的错误 - 兼容性问题
Error due to wsimport on JDK7 and JAVAC support JDK6 - compatibility issue
我在我的项目中使用 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
来编译代码。因此 javac
执行期间不支持 JDK7
生成的 java 文件。
我收到如下类似的错误 - 仅供参考,wsimport
命令在我的 build.xml
文件中生成 ADMIN.java
文件。
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]
除了更改我们构建机器的 Java_home 选项并指向 JDK6 或您的 运行 java 版本之外,无论如何都无法解决上述问题。
我在我的项目中使用 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
来编译代码。因此 javac
执行期间不支持 JDK7
生成的 java 文件。
我收到如下类似的错误 - 仅供参考,wsimport
命令在我的 build.xml
文件中生成 ADMIN.java
文件。
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]
除了更改我们构建机器的 Java_home 选项并指向 JDK6 或您的 运行 java 版本之外,无论如何都无法解决上述问题。