无法访问类 com.sun.org.apache.xerces.internal.impl.dv.util.Base64。

3

我有一个部署在Tomcat上的Web应用程序,当我尝试在NetBeans中部署它时,出现了这个错误。

java.lang.IllegalAccessError: class org.netbeans.modules.tomcat5.deploy.TomcatManagerImpl (in unnamed module @0x3196dd3d) cannot access class com.sun.org.apache.xerces.internal.impl.dv.util.Base64 (in module java.xml) because module java.xml does not export com.sun.org.apache.xerces.internal.impl.dv.util to unnamed module @0x3196dd3d

堆栈跟踪

java.lang.IllegalAccessError: class org.netbeans.modules.tomcat5.deploy.TomcatManagerImpl (in unnamed module @0x3196dd3d) cannot access class com.sun.org.apache.xerces.internal.impl.dv.util.Base64 (in module java.xml) because module java.xml does not export com.sun.org.apache.xerces.internal.impl.dv.util to unnamed module @0x3196dd3d
    at org.netbeans.modules.tomcat5.deploy.TomcatManagerImpl.run(TomcatManagerImpl.java:533)
    at org.netbeans.modules.tomcat5.deploy.TomcatManagerImpl.list(TomcatManagerImpl.java:372)
    at org.netbeans.modules.tomcat5.deploy.TomcatManager.modules(TomcatManager.java:718)
    at org.netbeans.modules.tomcat5.deploy.TomcatManager.getAvailableModules(TomcatManager.java:529)
    at org.netbeans.modules.tomcat5.optional.TMIDResolver.lookupTargetModuleID(TMIDResolver.java:56)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.checkUndeployForSharedReferences(TargetServer.java:349)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.checkUndeployForSharedReferences(TargetServer.java:322)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.checkUndeployForSharedReferences(TargetServer.java:319)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.processLastTargetModules(TargetServer.java:440)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.init(TargetServer.java:170)
    at org.netbeans.modules.j2ee.deployment.impl.TargetServer.deploy(TargetServer.java:605)
    at org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment.deploy(Deployment.java:221)
    at org.netbeans.modules.j2ee.deployment.devmodules.api.Deployment.deploy(Deployment.java:141)
    at org.netbeans.modules.j2ee.ant.Deploy.execute(Deploy.java:86)
    at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
    at jdk.internal.reflect.GeneratedMethodAccessor46.invoke(Unknown Source)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:567)
    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:1388)
    at org.apache.tools.ant.Project.executeTarget(Project.java:1361)
    at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
    at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
    at org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:261)
    at org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:574)
    at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:128)
BUILD FAILED (total time: 1 second)

我该如何解决这个问题?我按照这些问题的步骤操作,但对我没有用。Java-xBased 部署问题.

OpenJDK 版本

openjdk 16 2021-03-16
OpenJDK Runtime Environment 21.3 (build 16+36)
OpenJDK 64-Bit Server VM 21.3 (build 16+36, mixed mode, sharing)

NetBeans 版本

Apache NetBeans IDE 12.0


1
除了其他问题外,使用JDK 16与NetBeans 12.0不是有效的。根据NetBeans 12.0的发布文档:_"Apache NetBeans 12.0可以在JDK LTS版本8和11上运行,也可以在JDK 14上运行,即在此NetBeans版本发布时的当前JDK版本"_. 因此,为解决此问题,请首先将JDK 14用作NetBeans 12.0上的默认平台,并在问题仍然存在时更新您的问题。 - skomisa
@skomisa 我想通了。 - SHARON XAVIER
1
那问题是什么?... - skomisa
@skomisa 这是一个 bug。 - SHARON XAVIER
好的。很好,你追求并解决了这个问题,尽管现在对你没有帮助。 - skomisa
@skomisa 我升级到了 NetBeans 12.3,现在出现了新的错误。请查看这个问题:https://stackoverflow.com/questions/67228369/can-not-clean-and-build-web-app-in-netbeans - SHARON XAVIER
2个回答


0

Apache Netbeans 12.0需要JDK 14或更低版本才能正常工作,因此我建议安装Amazon Corretto 11或任何JDK 11发行版,并重新安装Apache Netbeans。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接