diff --git oak-run/pom.xml oak-run/pom.xml
index e4486e6..f8e353a 100644
--- oak-run/pom.xml
+++ oak-run/pom.xml
@@ -81,39 +81,53 @@
       </plugin>
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-shade-plugin</artifactId>
-        <version>1.6</version>
+        <artifactId>maven-dependency-plugin</artifactId>
+        <version>2.8</version>
         <executions>
           <execution>
+            <id>copy</id>
             <phase>package</phase>
             <goals>
-              <goal>shade</goal>
+              <goal>unpack</goal>
             </goals>
             <configuration>
-              <createDependencyReducedPom>false</createDependencyReducedPom>
-              <artifactSet>
-                <includes>
-                  <include>*</include>
-                </includes>
-                <excludes>
-                  <exclude>${lucene.exclude}</exclude>
-                </excludes>
-              </artifactSet>
-              <filters>
-                <filter>
-                  <artifact>*</artifact>
-                  <excludes>
-                    <exclude>META-INF/*.SF</exclude>
-                    <exclude>META-INF/*.DSA</exclude>
-                    <exclude>META-INF/*.RSA</exclude>
-                  </excludes>
-                </filter>
-              </filters>
-              <transformers>
-                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
+              <artifactItems>
+                <artifactItem>
+                  <groupId>org.apache.lucene</groupId>
+                  <artifactId>lucene-core</artifactId>
+                  <version>3.6.0</version>
+                  <type>jar</type>
+                  <overWrite>false</overWrite>
+                  <outputDirectory>${project.build.directory}/jr2</outputDirectory>
+                </artifactItem>
+              </artifactItems>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-assembly-plugin</artifactId>
+        <version>2.4</version>
+        <executions>
+          <execution>
+            <id>create-distribution-oak</id>
+            <phase>package</phase>
+            <goals>
+              <goal>single</goal>
+            </goals>
+            <configuration>
+              <descriptors>
+                <descriptor>src/main/assembly/oak-run.xml</descriptor>
+                <descriptor>src/main/assembly/oak-run-jr2.xml</descriptor>
+              </descriptors>
+              <archive>
+                <manifest>
+                  <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
+                  <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                   <mainClass>org.apache.jackrabbit.oak.run.Main</mainClass>
-                </transformer>
-              </transformers>
+                </manifest>
+              </archive>
             </configuration>
           </execution>
         </executions>
@@ -254,10 +268,6 @@
       <artifactId>logback-classic</artifactId>
     </dependency>
     <dependency>
-      <groupId>org.apache.jclouds.provider</groupId>
-      <artifactId>aws-s3</artifactId>
-    </dependency>
-    <dependency>
       <groupId>org.codehaus.groovy</groupId>
       <artifactId>groovy-all</artifactId>
       <version>${groovy.version}</version>
@@ -290,13 +300,7 @@
 
   <profiles>
     <profile>
-      <activation>
-        <activeByDefault>true</activeByDefault>
-      </activation>
-      <id>oak-run-jr2</id>
-      <properties>
-        <lucene.exclude>org.apache.jackrabbit:oak-lucene</lucene.exclude>
-      </properties>
+      <id>jr2</id>
       <dependencies>
         <dependency>
           <groupId>org.apache.lucene</groupId>
@@ -306,24 +310,13 @@
       </dependencies>
     </profile>
     <profile>
-      <id>oak-run-oak</id>
-      <activation>
-        <activeByDefault>false</activeByDefault>
-      </activation>
-      <properties>
-        <!--
-        Lucene classes are already part of oak-lucene so exclude
-        them in maven-shade-plugin. Otherwise it causes duplicate
-        classes warning
-        -->
-        <lucene.exclude>org.apache.lucene:*</lucene.exclude>
-      </properties>
-      <dependencies>
-        <!--
+      <!--
          oak-lucene embeds the Lucene jar. However when running in IDE
          the IDE use the module classpath. So need to explicitly list the
          lucene jars
         -->
+      <id>ide</id>
+      <dependencies>
         <dependency>
           <groupId>org.apache.lucene</groupId>
           <artifactId>lucene-core</artifactId>
diff --git oak-run/src/main/assembly/oak-run-jr2.xml oak-run/src/main/assembly/oak-run-jr2.xml
new file mode 100644
index 0000000..ba2b802
--- /dev/null
+++ oak-run/src/main/assembly/oak-run-jr2.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<assembly  xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
+           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2  http://maven.apache.org/xsd/assembly-1.1.2.xsd">
+  <id>jr2</id>
+  <formats>
+    <format>jar</format>
+  </formats>
+  <includeBaseDirectory>false</includeBaseDirectory>
+  <fileSets>
+    <fileSet>
+      <directory>${project.build.directory}/jr2</directory>
+      <outputDirectory>/</outputDirectory>
+    </fileSet>
+  </fileSets>
+  <dependencySets>
+    <dependencySet>
+      <outputDirectory>/</outputDirectory>
+      <excludes>
+        <exclude>org.apache.jackrabbit:oak-lucene</exclude>
+      </excludes>
+      <useStrictFiltering>true</useStrictFiltering>
+      <useProjectArtifact>true</useProjectArtifact>
+      <unpack>true</unpack>
+      <useTransitiveDependencies>true</useTransitiveDependencies>
+      <unpackOptions>
+        <excludes>
+          <exclude>META-INF/*.SF</exclude>
+          <exclude>META-INF/*.DSA</exclude>
+          <exclude>META-INF/*.RSA</exclude>
+          <!-- Some bundle like oak-core currently embeds bundle for OSGi support.
+              They would not be usable anyway in jar run so exclude them
+          -->
+          <exclude>*.jar</exclude>
+        </excludes>
+      </unpackOptions>
+    </dependencySet>
+  </dependencySets>
+</assembly>
\ No newline at end of file
diff --git oak-run/src/main/assembly/oak-run.xml oak-run/src/main/assembly/oak-run.xml
new file mode 100644
index 0000000..93c0119
--- /dev/null
+++ oak-run/src/main/assembly/oak-run.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ~ Licensed to the Apache Software Foundation (ASF) under one
+  ~ or more contributor license agreements.  See the NOTICE file
+  ~ distributed with this work for additional information
+  ~ regarding copyright ownership.  The ASF licenses this file
+  ~ to you under the Apache License, Version 2.0 (the
+  ~ "License"); you may not use this file except in compliance
+  ~ with the License.  You may obtain a copy of the License at
+  ~
+  ~   http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing,
+  ~ software distributed under the License is distributed on an
+  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+  ~ KIND, either express or implied.  See the License for the
+  ~ specific language governing permissions and limitations
+  ~ under the License.
+  -->
+
+<assembly  xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
+           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+           xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2  http://maven.apache.org/xsd/assembly-1.1.2.xsd">
+  <id>oak</id>
+  <formats>
+    <format>jar</format>
+  </formats>
+  <includeBaseDirectory>false</includeBaseDirectory>
+  <dependencySets>
+    <dependencySet>
+      <outputDirectory>/</outputDirectory>
+      <excludes>
+        <exclude>org.apache.jackrabbit:jackrabbit-core</exclude>
+        <exclude>org.apache.derby</exclude>
+      </excludes>
+      <useStrictFiltering>true</useStrictFiltering>
+      <useProjectArtifact>true</useProjectArtifact>
+      <unpack>true</unpack>
+      <useTransitiveDependencies>true</useTransitiveDependencies>
+      <unpackOptions>
+        <excludes>
+          <exclude>META-INF/*.SF</exclude>
+          <exclude>META-INF/*.DSA</exclude>
+          <exclude>META-INF/*.RSA</exclude>
+          <!-- Some bundle like oak-core currently embeds bundle for OSGi support.
+              They would not be usable anyway in jar run so exclude them
+          -->
+          <exclude>*.jar</exclude>
+        </excludes>
+      </unpackOptions>
+    </dependencySet>
+  </dependencySets>
+</assembly>
\ No newline at end of file
