WebLogic 14.1.2+JDK17环境下Ant JWSC任务构建JAXWS服务失败求助
WebLogic 14.1.2+JDK17环境下Ant JWSC任务构建JAXWS服务失败求助
大家好,我最近在WebLogic 14.1.2、Ant 1.10.15(注:原描述写的1.0.15,推测是笔误)和JDK17环境下搭建JAXWS示例服务,执行jwsc Ant任务时遭遇了失败。我已经尝试通过设置ANT_OPTS和JAVA_TOOL_OPTIONS来配置模块访问权限,但问题依然存在,希望社区的朋友们能帮我排查下问题。
1. 服务实现类代码
package examples.webservices.hello_world; import javax.jws.WebService; @WebService(name="HelloWorldPortType", serviceName="HelloWorldService") public class HelloWorldImpl { public String sayHelloWorld(String message) { try { // System.out.println("sayHelloWorld:" + message); } catch (Exception ex) { ex.printStackTrace(); } return "Here is the message: '" + message + "'"; } }
2. build.xml配置
<project name="webservices-hello_world" default="all"> <property name="WL_HOME" value="D:\Install\Oracle_Home_14_1_2\Oracel_Home\wlserver"/> <path id="weblogic.ant.classpath"> <pathelement location="${WL_HOME}/server/lib/weblogic.jar"/> <pathelement location="${WL_HOME}/server/lib/wlthint3client.jar"/> </path> <taskdef name="jwsc" classname="weblogic.wsee.tools.anttasks.JwscTask"> <classpath refid="weblogic.ant.classpath"/> </taskdef> <target name="build-service"> <jwsc srcdir="src" destdir="${ear-dir}" > <jws file="examples/webservices/hello_world/HelloWorldImpl.java" type="JAXWS"> </jws> </jwsc> </target> </project>
3. 报错堆栈信息
java.lang.RuntimeException: Unknown javadoc problem: result=2, root=null: java.io.PrintStream@2d96543c at com.bea.util.jam.internal.javadoc.JavadocRunner.run(JavadocRunner.java:186) at com.bea.util.jam.internal.javadoc.JavadocClassBuilder.initJavadoc(JavadocClassBuilder.java:350) at com.bea.util.jam.internal.javadoc.JavadocClassBuilder.init(JavadocClassBuilder.java:121) at com.bea.util.jam.provider.CompositeJamClassBuilder.init(CompositeJamClassBuilder.java:47) at com.bea.util.jam.provider.JamServiceFactoryImpl.createBuilder(JamServiceFactoryImpl.java:178) at com.bea.util.jam.provider.JamServiceFactoryImpl.createClassLoader(JamServiceFactoryImpl.java:137) at com.bea.util.jam.provider.JamServiceFactoryImpl.createService(JamServiceFactoryImpl.java:78) at weblogic.wsee.util.JamUtil.parseSource(JamUtil.java:173) at weblogic.wsee.util.JamUtil.parseSource(JamUtil.java:142) at weblogic.wsee.tools.anttasks.JwsLoader.loadJClasses(JwsLoader.java:187) at weblogic.wsee.tools.anttasks.JwsLoader.load(JwsLoader.java:75) at weblogic.wsee.tools.anttasks.JwsModule.loadWebServices(JwsModule.java:680) at weblogic.wsee.tools.anttasks.JwsModule.generate(JwsModule.java:481) at weblogic.wsee.tools.anttasks.JwsModule.build(JwsModule.java:306) at weblogic.wsee.tools.anttasks.JwscTask.execute(JwscTask.java:242) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:299) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:99) at org.apache.tools.ant.Task.perform(Task.java:350) at org.apache.tools.ant.Target.execute(Target.java:449) at org.apache.tools.ant.Target.performTasks(Target.java:470) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1401) at org.apache.tools.ant.Project.executeTarget(Project.java:1374) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1264) at org.apache.tools.ant.Main.runBuild(Main.java:818) at org.apache.tools.ant.Main.startAnt(Main.java:223) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:284) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:101)
我已经尝试过的操作
- 配置
ANT_OPTS参数,添加了JDK17模块化相关的参数,比如--add-modules java.se、--add-exports java.base/jdk.internal.reflect=ALL-UNNAMED等 - 配置
JAVA_TOOL_OPTIONS参数,内容和ANT_OPTS类似 - 确认了WebLogic的类路径配置正确,
weblogic.jar和wlthint3client.jar的路径都没问题
但以上操作都没能解决问题,有没有朋友遇到过类似的情况?或者能从报错堆栈里看出问题所在吗?
内容来源于stack exchange




