Browse Source

ZOOKEEPER-2915: Use "strict" conflict management in ivy

Same as https://github.com/apache/zookeeper/pull/397 just targeting branch-3.5

Author: Abraham Fine <afine@apache.org>

Reviewers: phunt@apache.org

Closes #426 from afine/ZOOKEEPER-2915_3.5

Change-Id: I5801b259b458b3d6495c252da0f0d9d5f0db985e
Abraham Fine 8 năm trước cách đây
mục cha
commit
8d63d588da
2 tập tin đã thay đổi với 34 bổ sung17 xóa
  1. 13 9
      build.xml
  2. 21 8
      ivy.xml

+ 13 - 9
build.xml

@@ -244,25 +244,29 @@ xmlns:cs="antlib:com.puppycrawl.tools.checkstyle.ant">
       </sequential>
     </macrodef>
 
-    <!-- the normal classpath -->
-    <path id="java.classpath">
+    <path id="base.classpath">
       <pathelement location="${build.classes}"/>
       <!-- allow the user to override (e.g. if there are local versions) -->
       <fileset dir="${additional.lib.dir}">
-        <include name="${additional.lib.dir.includes}" />
-        <exclude name="${additional.lib.dir.excludes}" />
+          <include name="${additional.lib.dir.includes}" />
+          <exclude name="${additional.lib.dir.excludes}" />
       </fileset>
       <fileset dir="${lib.dir}">
-        <include name="${lib.dir.includes}" />
-        <exclude name="${lib.dir.excludes}" />
+          <include name="${lib.dir.includes}" />
+          <exclude name="${lib.dir.excludes}" />
       </fileset>
       <fileset dir="${ant.home}/lib">
-        <include name="ant.jar" />
+          <include name="ant.jar" />
       </fileset>
+      <pathelement path="${clover.jar}" />
+    </path>
+
+    <!-- the normal classpath -->
+    <path id="java.classpath">
+      <path refid="base.classpath"/>
       <fileset dir="${ivy.lib}">
         <include name="**/*.jar" />
       </fileset>
-      <pathelement path="${clover.jar}" />
     </path>
 
     <path id="test.java.classpath">
@@ -270,7 +274,7 @@ xmlns:cs="antlib:com.puppycrawl.tools.checkstyle.ant">
       <fileset dir="${ivy.test.lib}">
         <include name="**/*.jar" />
       </fileset>
-      <path refid="java.classpath"/>
+      <path refid="base.classpath"/>
     </path>
 
     <!-- ====================================================== -->

+ 21 - 8
ivy.xml

@@ -28,7 +28,7 @@
   <configurations defaultconfmapping="default">
     <conf name="master"/>
     <conf name="default" extends="optional"/>
-    <conf name="test"/>
+    <conf name="test" extends="default"/>
     <conf name="mvn-ant-task" visibility="private"/>
     <conf name="optional"/> <!-- optional in generated pom -->
     <conf name="jdiff" visibility="private"/>
@@ -66,7 +66,10 @@
 	<dependency org="org.mockito" name="mockito-all" rev="${mockito.version}"
                conf="test->default"/>
     <dependency org="com.puppycrawl.tools" name="checkstyle" rev="${checkstyle.version}"
-                conf="test->default"/>
+                conf="test->default">
+        <exclude org="commons-collections" module="commons-collections"/>
+        <exclude org="commons-cli" module="commons-cli"/>
+    </dependency>
     <!-- force the tests to pull the latest commons-collections jar -->
     <dependency org="commons-collections" name="commons-collections" 
                 rev="${commons-collections.version}" conf="test->default"/>
@@ -77,7 +80,9 @@
                 conf="jdiff->default"/>
 
     <dependency org="org.apache.rat" name="apache-rat-tasks" 
-                rev="${apache-rat-tasks.version}" conf="releaseaudit->default"/>
+                rev="${apache-rat-tasks.version}" conf="releaseaudit->default">
+        <exclude org="commons-collections" module="commons-collections"/>
+    </dependency>
     <dependency org="commons-lang" name="commons-lang" 
                 rev="${commons-lang.version}" conf="releaseaudit->default"/>
     <dependency org="commons-collections" name="commons-collections" 
@@ -88,12 +93,17 @@
     <dependency org="commons-io" name="commons-io"
                 rev="${commons-io.version}" conf="test->default"/>
 
-    <dependency org="org.apache.kerby" name="kerb-simplekdc"
-                rev="${kerby.version}" conf="test->default"/>
-    <dependency org="org.apache.kerby" name="kerby-config"
-                rev="${kerby.version}" conf="test->default"/>
+    <dependency org="org.apache.kerby" name="kerby-config" rev="${kerby.version}" conf="test->default">
+          <exclude org="org.slf4j" module="slf4j-api"/>
+          <exclude org="org.slf4j" module="slf4j-log4j12"/>
+    </dependency>
+    <dependency org="org.apache.kerby" name="kerb-simplekdc" rev="${kerby.version}" conf="test->default">
+        <exclude org="org.slf4j" module="slf4j-api"/>
+    </dependency>
     <dependency org="org.apache.kerby" name="kerb-core"
-                rev="${kerby.version}" conf="test->default"/>
+                rev="${kerby.version}" conf="test->default">
+        <exclude org="org.slf4j" module="slf4j-api"/>
+    </dependency>
     <dependency org="org.apache.kerby" name="kerb-server"
                 rev="${kerby.version}" conf="test->default"/>
     <dependency org="org.apache.kerby" name="kerb-common"
@@ -122,5 +132,8 @@
                   conf="optional->default"/>
     <dependency org="org.codehaus.jackson" name="jackson-mapper-asl"
                 rev="${jackson-mapper-asl.version}" conf="optional->default"/>
+
+    <conflict manager="strict"/>
+
   </dependencies>
 </ivy-module>