我认为这个问题与JDK 9中的模块排除无关(如java.se.ee),而是因为JDK 9在java.xml模块中包含了一个更新版本的org.w3c.dom.ls,该版本没有DocumentLS类。
堆栈跟踪的重要部分是:
即使我在这个类中包含一个运行时依赖项,比如
我正在使用Gradle 4.1。有没有办法限制JDK提供的模块的范围?
堆栈跟踪的重要部分是:
Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [spring-test/test-container.xml]; nested exception is java.lang.NoClassDefFoundError: org/w3c/dom/ls/DocumentLS
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:414)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:336)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181)
即使我在这个类中包含一个运行时依赖项,比如
xerces:xerces 2.4.0
,JDK的java.xml模块也是首选(我猜)。我正在使用Gradle 4.1。有没有办法限制JDK提供的模块的范围?