0

我有一个复杂的项目,其中核心maven模块(依赖于log4j)被其他人继承

2个Maven模块

  • 第一个是桌面摇摆应用程序
  • 第二个是安卓应用。

我想按原样构建第一个模块(swing 应用程序),以便它将继承标准log4j实现(从父核心模块),但对于第二个模块,我想使用log4j. 如何告诉 maven 做这样的事情?

4

1 回答 1

2

请参阅http://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html#Dependency_Exclusions

在您声明依赖项的 android 应用程序中,例如:

<project>
  ...
  <dependencies>
    <dependency>
      <groupId>sample.ProjectA</groupId>
      <artifactId>Project-A</artifactId>
      <version>1.0</version>
      <exclusions>
        <exclusion>  <!-- declare the exclusion here -->
          <groupId>log4j</groupId>
          <artifactId>log4j</artifactId>
        </exclusion>
      </exclusions> 
    </dependency>
  </dependencies>
</project>

但请确保您还包括 Log4J 的 Android 替代品。

于 2013-02-27T00:25:25.677 回答