You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@iceberg.apache.org by GitBox <gi...@apache.org> on 2019/06/27 21:05:22 UTC

[GitHub] [incubator-iceberg] rdblue commented on a change in pull request #236: iceberg: don't bundle hdfs with iceberg runtime

rdblue commented on a change in pull request #236: iceberg: don't bundle hdfs with iceberg runtime
URL: https://github.com/apache/incubator-iceberg/pull/236#discussion_r298369860
 
 

 ##########
 File path: build.gradle
 ##########
 @@ -355,44 +355,38 @@ project(':iceberg-pig') {
 project(':iceberg-runtime') {
   apply plugin: 'com.github.johnrengelman.shadow'
 
-  configurations {
-    shadow
-    compileOnly.extendsFrom shadow
-  }
-
-  shadowJar {
-    configurations = [project.configurations.shadow]
-    from(project.sourceSets.main.output)
-  }
-
-  tasks.build.dependsOn tasks.shadowJar
+  tasks.assemble.dependsOn tasks.shadowJar
   tasks.install.dependsOn tasks.shadowJar
   tasks.javadocJar.dependsOn tasks.shadowJar
 
   dependencies {
-    shadow project(':iceberg-api')
-    shadow project(':iceberg-common')
-    shadow project(':iceberg-core')
-    shadow project(':iceberg-parquet')
-    shadow project(':iceberg-spark')
-    shadow project(':iceberg-pig')
-    shadow project(':iceberg-hive')
-
-    shadow "org.apache.avro:avro:$avroVersion"
-    shadow "org.apache.parquet:parquet-avro:$parquetVersion"
+    compile project(':iceberg-api')
+    compile project(':iceberg-common')
+    compile project(':iceberg-core')
+    compile project(':iceberg-parquet')
+    compile project(':iceberg-spark')
+    compile project(':iceberg-pig')
+    compile project(':iceberg-hive')
+
+    compile "org.apache.avro:avro:$avroVersion"
+    compile "org.apache.parquet:parquet-avro:$parquetVersion"
+
   }
 
   publishing {
     publications {
       withType(IvyPublication) {
-        configurations {
-          'shadow' { extend 'runtime' }
-        }
+        from components.java
       }
     }
   }
 
   shadowJar {
+    dependencies {
+      exclude(dependency {
+        it.moduleGroup == 'org.apache.hadoop'
 
 Review comment:
   The reason why we used the `shadow` configuration was to pull in just the dependencies that we wanted to provide in the shaded Jar, not everything. That way, for libraries we know are going to be present at runtime, like Hadoop, Spark, or even SLF4J, we don't have to write specific exclusions. These exclusions get out of date really quickly.
   
   I still want to have a set of dependencies that we include explicitly.

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org