From beec1a36bbc0a5d3a6e8ab2ae3b46304539d184c Mon Sep 17 00:00:00 2001
From: liuxunorg <33611720@qq.com>
Date: Wed, 5 Sep 2018 19:06:37 +0800
Subject: [PATCH] [ZEPPELIN-3689] Shade all dependencies of
zeppelin-interpreter
### What is this PR for?
The custom interpreter may add other dependencies which conflict with zeppelin-interpreter's dependency, so it is better to shade zeppelin-interpreter's dependencies.
### What type of PR is it?
[Improve]
### Todos
* [x] Added new module interpreter-api to shade all dependencies of zeppelin-interpreter
* [x] Add maven-shade-plugin to interpreter-api/pom.xml
* [x] Add maven-surefire-plugin to interpreter-api/pom.xml
* [x] filter META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA
* [x] dependency the interpreter-api module in the zeppelin-interpreter/pom file
* [x] Exclude the interpreter-api module in the interpreter-parent/pom file to avoid dependency package conflicts
* [x] Exclude the interpreter-api module in the zeppelin-display/pom file to avoid dependency package conflicts
* [x] Exclude the interpreter-api module in the zeppelin-zengine/pom file to avoid dependency package conflicts
### What is the Jira issue?
* https://issues.apache.org/jira/browse/ZEPPELIN-3689
### How should this be tested?
CI pass
### Screenshots (if appropriate)
### Questions:
* Does the licenses files need update? No
* Is there breaking changes for older versions? No
* Does this needs documentation? No
---
interpreter-api/pom.xml | 136 +++++++++++++++++++++++++++++++++++
interpreter-parent/pom.xml | 6 ++
pom.xml | 1 +
zeppelin-display/pom.xml | 6 ++
zeppelin-interpreter/pom.xml | 5 ++
zeppelin-zengine/pom.xml | 6 ++
6 files changed, 160 insertions(+)
create mode 100644 interpreter-api/pom.xml
diff --git a/interpreter-api/pom.xml b/interpreter-api/pom.xml
new file mode 100644
index 00000000000..b6e238378e4
--- /dev/null
+++ b/interpreter-api/pom.xml
@@ -0,0 +1,136 @@
+
+
+
+
+
+ 4.0.0
+
+
+ zeppelin
+ org.apache.zeppelin
+ 0.9.0-SNAPSHOT
+ ..
+
+
+ org.apache.zeppelin
+ interpreter-api
+ jar
+ 0.9.0-SNAPSHOT
+ Zeppelin: Interpreter API
+ Shade all dependencies of zeppelin-interpreter
+
+
+
+ 3.0
+
+ 2.3
+
+
+
+
+
+ org.apache.maven
+ maven-plugin-api
+ ${maven.plugin.api.version}
+
+
+ org.codehaus.plexus
+ plexus-utils
+
+
+ org.sonatype.sisu
+ sisu-inject-plexus
+
+
+ org.apache.maven
+ maven-model
+
+
+
+
+
+
+
+
+ src/main/resources
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-checkstyle-plugin
+
+ false
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+
+
+
+ maven-surefire-plugin
+ ${plugin.surefire.version}
+
+ -Xmx2g -Xms1g -Dfile.encoding=UTF-8
+
+ ${tests.to.exclude}
+
+
+ 1
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+
+
+ package
+
+ shade
+
+
+
+
+ *:*
+
+ META-INF/*.SF
+ META-INF/*.DSA
+ META-INF/*.RSA
+
+
+
+
+
+
+ reference.conf
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/interpreter-parent/pom.xml b/interpreter-parent/pom.xml
index 25af44140aa..57f123e7829 100644
--- a/interpreter-parent/pom.xml
+++ b/interpreter-parent/pom.xml
@@ -38,6 +38,12 @@
${project.groupId}
zeppelin-interpreter
${project.version}
+
+
+ ${project.groupId}
+ interpreter-api
+
+
diff --git a/pom.xml b/pom.xml
index 60af8bca62a..b3c1b911933 100644
--- a/pom.xml
+++ b/pom.xml
@@ -52,6 +52,7 @@
2013
+ interpreter-api
interpreter-parent
zeppelin-interpreter
zeppelin-zengine
diff --git a/zeppelin-display/pom.xml b/zeppelin-display/pom.xml
index 79a08a69a6d..9325b748e67 100644
--- a/zeppelin-display/pom.xml
+++ b/zeppelin-display/pom.xml
@@ -69,6 +69,12 @@
${project.groupId}
zeppelin-interpreter
${project.version}
+
+
+ ${project.groupId}
+ interpreter-api
+
+
diff --git a/zeppelin-interpreter/pom.xml b/zeppelin-interpreter/pom.xml
index 4ee10806922..88efeeebc39 100644
--- a/zeppelin-interpreter/pom.xml
+++ b/zeppelin-interpreter/pom.xml
@@ -50,6 +50,11 @@
+
+ ${project.groupId}
+ interpreter-api
+ ${project.version}
+
org.apache.thrift
diff --git a/zeppelin-zengine/pom.xml b/zeppelin-zengine/pom.xml
index d37f6eab88d..3d36b07b934 100644
--- a/zeppelin-zengine/pom.xml
+++ b/zeppelin-zengine/pom.xml
@@ -55,6 +55,12 @@
${project.groupId}
zeppelin-interpreter
${project.version}
+
+
+ ${project.groupId}
+ interpreter-api
+
+