Java 如何解决Groovy与Apache公共日志的冲突?

Java 如何解决Groovy与Apache公共日志的冲突?,java,logging,groovy,maven,Java,Logging,Groovy,Maven,这是我的自定义maven Groovy执行: [...] <plugin> <groupId>org.codehaus.groovy.maven</groupId> <artifactId>gmaven-plugin</artifactId> <version>1.0-rc-5-SNAPSHOT</version> <executions> <execution>

这是我的自定义maven Groovy执行:

[...]
<plugin>
  <groupId>org.codehaus.groovy.maven</groupId>
  <artifactId>gmaven-plugin</artifactId>
  <version>1.0-rc-5-SNAPSHOT</version>
  <executions>
    <execution>
      <phase>prepare-package</phase>
      <goals>
        <goal>execute</goal>
      </goals>
      <configuration>
        <classpath>
          <element>
            <groupId>commons-httpclient</groupId>
            <artifactId>commons-httpclient</artifactId>
            <version>3.1</version>
          </element
        </classpath>
        <source>
          import org.apache.commons.httpclient.HttpClient;
          // ...
        </source>
      </configuration>
    </execution>
  </executions>
</plugin>
[...]

我想我理解它为什么会发生,但我如何解决它呢?

如果不查看整个pom.xml文件,很难确切地说如何解决这个问题,但我建议查看标记。您可以使用以下方法排除额外的依赖项:

<plugin>
    ...
    ...
    <dependencies>
        <dependency>
            <artifactId>...</artifactId>
            <groupId>...</groupId>
            <version>...</version>
            <exclusions>
                <exclusion>
                    <artifactId>commons-logging</artifactId>
                    <groupId>commons-logging</groupId>                        
                <exclusion>
            </exclusions>
        </dependency>
    </dependencies>
</plugin>

...
...
...
...
...
公用记录
公用记录

检查谁正在使用mvn dependency:tree导入该依赖项并删除冲突。

升级到1.3版解决了问题。

我很好奇,为什么要使用旧的gmaven插件而不是1.3()?谢谢,从现在起将使用1.3:)我的项目中包含了
通用日志记录。我不能完全排除它:)我只需要为这个特定的Groovy片段排除它。可能吗?Vincenzo,您的“commons httpd”也有一个commons日志依赖项。因此,当您尝试使用commons httpclient时,有两个“commons logging”依赖项发生冲突(您包括的那个依赖项和它想要使用的那个依赖项)。我建议你做的是排除commons httpclient想要使用的那个。没错,但是如何排除它呢?我知道谁在导入这个依赖项,是我:)我需要这个JAR在我的项目中,我不能排除它。我只想Gmaven不要再导入它。我能做这个吗?
<plugin>
    ...
    ...
    <dependencies>
        <dependency>
            <artifactId>...</artifactId>
            <groupId>...</groupId>
            <version>...</version>
            <exclusions>
                <exclusion>
                    <artifactId>commons-logging</artifactId>
                    <groupId>commons-logging</groupId>                        
                <exclusion>
            </exclusions>
        </dependency>
    </dependencies>
</plugin>