我正在使用groovy的logback并在解析xml时出现很多警告.我知道JDK1.7_u45中导致此问题的错误.
Warning: org.apache.xerces.parsers.SAXParser: Property 'http://javax.xml.XMLConstants/property/accessExternalDTD' is not recognized.
Warning: org.apache.xerces.parsers.SAXParser: Property 'http://www.oracle.com/xml/jaxp/properties/entityExpansionLimit' is not recognized.
Run Code Online (Sandbox Code Playgroud)
有没有办法关闭这个日志警告出现在DEBUG?我尝试使用Filter编写过滤器,但没有帮助.
我想排除Maven插件的直接依赖,并且此答案中描述的方法不起作用(如本评论所示).
作为一个特例:
<build>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.13.2</version>
<!-- more config -->
<dependencies>
<dependency>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.13.2</version>
<exclusions>
<exclusion>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
Run Code Online (Sandbox Code Playgroud)
我仍然javax.xml.bind:jaxb-api在依赖列表中看到(带mvn ... -X).我究竟做错了什么?
(如果有人知道如何用该API的JDK 9等效替换该工件的依赖关系[似乎发生在Java 8上,其中"JAXB API os从[jar:... jre/lib]加载/rt.jar]"],我很高兴为此开启一个新问题.)
想法用完了,无论如何这都是一个实验,我通过pom.xml在我的本地存储库中编辑插件来排除依赖.现在mvn ... -X表明org.jvnet.jaxb2.maven2:maven-jaxb22-plugin我还可以通过上面的机制成功排除间接依赖(在这种情况下).只使用两个排除,从maven-jaxb2-plugin和maven-jaxb22-plugin,不会做的伎俩.这表明排除通常起作用,但显然不是插件的直接依赖.
(顺便说一句,这确实导致"Java JAXB API从[jrt:/java.xml.bind]"加载,这是我的目标.)
我正在使用 Exec Maven 插件在我的 Maven 构建中运行 java 程序。我在使用 exec 插件执行此 java 程序时遇到问题,因为它使用包含项目依赖项的类路径执行,其中包括执行的 java 程序中不需要的 xml 解析器实现,并会导致错误。将属性“includeProjectDependency”设置为 false 不是一个选项,因为我需要项目中的其他依赖项(并且不想将它们显式设置为插件执行配置以避免重复)。通过 exec 插件运行程序时,有没有办法将其从类路径中排除?我只知道如何排除项目中的依赖项(这是错误的,因为我在生成的战争文件中需要它)或如何排除插件的依赖项,但找不到在执行时如何排除项目依赖项的方法插入...
我希望有一种方法可以实现我想要的目标,如果有人能给我一些建议,那将会非常有帮助。
谢谢,马可
在我的POM中,有一个依赖:spock-core 1.0-groovy-2.3,它将groovy-all 2.3.10添加到我的项目中.而且,我的eclipse groovy插件包含groovy-all 2.3.7 jar.因此,每当我尝试运行我的groovy spec文件时,都会抛出以下错误:
groovy.lang.GroovyRuntimeException:冲突的模块版本.模块[groovy-all在版本2.3.7中加载,您尝试加载版本2.3.10
所以,为了匹配我给我留下的两个选项:
第一个选项是不可能的,因为没有这样的spock-core依赖可以为我提供groovy-all 2.3.7 jar.所以,请指导我如何将我的groovy eclipse插件从2.3.7升级到2.3.10.
PS我为我的项目设置了groovy编译器级别为2.3.而且,我在Luna,Kepler,Juno eclipse面临同样的问题.