diff --git a/.gitignore b/.gitignore
index 3b625ee7b..df1d99ab6 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,4 +7,5 @@ target
/.project
/.idea
atlassian-ide-plugin.xml
-.DS_Store
\ No newline at end of file
+.DS_Store
+dependency-reduced-pom.xml
\ No newline at end of file
diff --git a/browsermob-core/pom.xml b/browsermob-core/pom.xml
index e6bdd7ffb..c81b4282e 100644
--- a/browsermob-core/pom.xml
+++ b/browsermob-core/pom.xml
@@ -12,6 +12,7 @@
4.0.0
browsermob-core
+ BrowserMob Proxy Core Module
diff --git a/browsermob-dist/assembly.xml b/browsermob-dist/assembly.xml
new file mode 100644
index 000000000..cb37386df
--- /dev/null
+++ b/browsermob-dist/assembly.xml
@@ -0,0 +1,55 @@
+
+
+ bin
+
+ zip
+
+
+
+ ${project.basedir}/..
+
+ LICENSE.txt
+ README.txt
+ README.md
+
+ ./
+
+
+ ${project.basedir}/src/main/scripts
+ bin
+ keep
+ 0744
+ 0755
+
+
+ ${project.basedir}/../browsermob-core/target
+
+ *-sources.jar
+ *-javadoc.jar
+
+ ./
+
+
+ ${project.basedir}/../browsermob-rest/target
+
+ *-sources.jar
+ *-javadoc.jar
+
+ ./
+
+
+ ${project.basedir}/src/main/config
+
+ bin/conf
+
+
+ ${project.basedir}/target
+
+ ${project.build.finalName}.jar
+
+ lib
+
+
+
diff --git a/browsermob-dist/pom.xml b/browsermob-dist/pom.xml
new file mode 100644
index 000000000..ea638b44b
--- /dev/null
+++ b/browsermob-dist/pom.xml
@@ -0,0 +1,125 @@
+
+
+
+ browsermob-proxy
+ net.lightbody.bmp
+ 2.0-beta-10-SNAPSHOT
+
+ 4.0.0
+
+ browsermob-dist
+ jar
+
+ BrowserMob Proxy Distributable
+
+
+ ${project.parent.artifactId}-${project.version}
+
+
+
+
+ net.lightbody.bmp
+ browsermob-core
+ ${project.version}
+
+
+ net.lightbody.bmp
+ browsermob-rest
+ ${project.version}
+
+
+
+
+ package
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+ true
+
+
+
+
+ org.apache.maven.plugins
+ maven-install-plugin
+
+ true
+
+
+
+
+
+
+
+
+ release
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+ true
+ false
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+ 2.3
+
+
+ package
+
+ shade
+
+
+
+
+ *:*
+
+ META-INF/*.SF
+ META-INF/*.DSA
+ META-INF/*.RSA
+
+
+
+
+
+ net.lightbody.bmp.proxy.Main
+
+
+ false
+
+
+
+
+
+ maven-assembly-plugin
+ 2.5.3
+
+
+ make-bundles
+
+ single
+
+ package
+
+
+ assembly.xml
+
+ ${zip.name}
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/conf/bmp-logging.properties b/browsermob-dist/src/main/config/bmp-logging.properties
similarity index 100%
rename from conf/bmp-logging.properties
rename to browsermob-dist/src/main/config/bmp-logging.properties
diff --git a/browsermob-dist/src/main/scripts/browsermob-proxy b/browsermob-dist/src/main/scripts/browsermob-proxy
new file mode 100755
index 000000000..2683c4cef
--- /dev/null
+++ b/browsermob-dist/src/main/scripts/browsermob-proxy
@@ -0,0 +1,100 @@
+#!/bin/sh
+# ----------------------------------------------------------------------------
+# Copyright 2001-2006 The Apache Software Foundation.
+#
+# Licensed 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.
+# ----------------------------------------------------------------------------
+
+# Copyright (c) 2001-2002 The Apache Software Foundation. All rights
+# reserved.
+
+BASEDIR=`dirname $0`/..
+BASEDIR=`(cd "$BASEDIR"; pwd)`
+
+
+
+# OS specific support. $var _must_ be set to either true or false.
+cygwin=false;
+darwin=false;
+case "`uname`" in
+ CYGWIN*) cygwin=true ;;
+ Darwin*) darwin=true
+ if [ -z "$JAVA_VERSION" ] ; then
+ JAVA_VERSION="CurrentJDK"
+ else
+ echo "Using Java version: $JAVA_VERSION"
+ fi
+ if [ -z "$JAVA_HOME" ] ; then
+ JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/${JAVA_VERSION}/Home
+ fi
+ ;;
+esac
+
+if [ -z "$JAVA_HOME" ] ; then
+ if [ -r /etc/gentoo-release ] ; then
+ JAVA_HOME=`java-config --jre-home`
+ fi
+fi
+
+# For Cygwin, ensure paths are in UNIX format before anything is touched
+if $cygwin ; then
+ [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
+ [ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
+fi
+
+# If a specific java binary isn't specified search for the standard 'java' binary
+if [ -z "$JAVACMD" ] ; then
+ if [ -n "$JAVA_HOME" ] ; then
+ if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
+ # IBM's JDK on AIX uses strange locations for the executables
+ JAVACMD="$JAVA_HOME/jre/sh/java"
+ else
+ JAVACMD="$JAVA_HOME/bin/java"
+ fi
+ else
+ JAVACMD=`which java`
+ fi
+fi
+
+if [ ! -x "$JAVACMD" ] ; then
+ echo "Error: JAVA_HOME is not defined correctly."
+ echo " We cannot execute $JAVACMD"
+ exit 1
+fi
+
+if [ -z "$REPO" ]
+then
+ REPO="$BASEDIR"/lib
+fi
+
+CLASSPATH=$CLASSPATH_PREFIX:"$BASEDIR"/etc:"$REPO"/*
+EXTRA_JVM_ARGUMENTS=""
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin; then
+ [ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
+ [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
+ [ -n "$HOME" ] && HOME=`cygpath --path --windows "$HOME"`
+ [ -n "$BASEDIR" ] && BASEDIR=`cygpath --path --windows "$BASEDIR"`
+ [ -n "$REPO" ] && REPO=`cygpath --path --windows "$REPO"`
+fi
+
+exec "$JAVACMD" $JAVA_OPTS \
+ $EXTRA_JVM_ARGUMENTS \
+ -classpath "$CLASSPATH" \
+ -Dapp.name="browsermob-proxy" \
+ -Dapp.pid="$$" \
+ -Dapp.repo="$REPO" \
+ -Dbasedir="$BASEDIR" \
+ net.lightbody.bmp.proxy.Main \
+ "$@"
diff --git a/browsermob-dist/src/main/scripts/browsermob-proxy.bat b/browsermob-dist/src/main/scripts/browsermob-proxy.bat
new file mode 100644
index 000000000..529ea1cfb
--- /dev/null
+++ b/browsermob-dist/src/main/scripts/browsermob-proxy.bat
@@ -0,0 +1,105 @@
+@REM ----------------------------------------------------------------------------
+@REM Copyright 2001-2004 The Apache Software Foundation.
+@REM
+@REM Licensed under the Apache License, Version 2.0 (the "License");
+@REM you may not use this file except in compliance with the License.
+@REM You may obtain a copy of the License at
+@REM
+@REM http://www.apache.org/licenses/LICENSE-2.0
+@REM
+@REM Unless required by applicable law or agreed to in writing, software
+@REM distributed under the License is distributed on an "AS IS" BASIS,
+@REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+@REM See the License for the specific language governing permissions and
+@REM limitations under the License.
+@REM ----------------------------------------------------------------------------
+@REM
+
+@echo off
+
+set ERROR_CODE=0
+
+:init
+@REM Decide how to startup depending on the version of windows
+
+@REM -- Win98ME
+if NOT "%OS%"=="Windows_NT" goto Win9xArg
+
+@REM set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" @setlocal
+
+@REM -- 4NT shell
+if "%eval[2+2]" == "4" goto 4NTArgs
+
+@REM -- Regular WinNT shell
+set CMD_LINE_ARGS=%*
+goto WinNTGetScriptDir
+
+@REM The 4NT Shell from jp software
+:4NTArgs
+set CMD_LINE_ARGS=%$
+goto WinNTGetScriptDir
+
+:Win9xArg
+@REM Slurp the command line arguments. This loop allows for an unlimited number
+@REM of arguments (up to the command line limit, anyway).
+set CMD_LINE_ARGS=
+:Win9xApp
+if %1a==a goto Win9xGetScriptDir
+set CMD_LINE_ARGS=%CMD_LINE_ARGS% %1
+shift
+goto Win9xApp
+
+:Win9xGetScriptDir
+set SAVEDIR=%CD%
+%0\
+cd %0\..\..
+set BASEDIR=%CD%
+cd %SAVEDIR%
+set SAVE_DIR=
+goto repoSetup
+
+:WinNTGetScriptDir
+set BASEDIR=%~dp0\..
+
+:repoSetup
+
+
+if "%JAVACMD%"=="" set JAVACMD=java
+
+if "%REPO%"=="" set REPO=%BASEDIR%\lib
+
+set CLASSPATH="%BASEDIR%"\etc;"%REPO%"\*
+set EXTRA_JVM_ARGUMENTS=
+goto endInit
+
+@REM Reaching here means variables are defined and arguments have been captured
+:endInit
+
+%JAVACMD% %JAVA_OPTS% %EXTRA_JVM_ARGUMENTS% -classpath %CLASSPATH_PREFIX%;%CLASSPATH% -Dapp.name="browsermob-proxy" -Dapp.repo="%REPO%" -Dbasedir="%BASEDIR%" net.lightbody.bmp.proxy.Main %CMD_LINE_ARGS%
+if ERRORLEVEL 1 goto error
+goto end
+
+:error
+if "%OS%"=="Windows_NT" @endlocal
+set ERROR_CODE=1
+
+:end
+@REM set local scope for the variables with windows NT shell
+if "%OS%"=="Windows_NT" goto endNT
+
+@REM For old DOS remove the set variables from ENV - we assume they were not set
+@REM before we started - at least we don't leave any baggage around
+set CMD_LINE_ARGS=
+goto postExec
+
+:endNT
+@endlocal
+
+:postExec
+
+if "%FORCE_EXIT_ON_ERROR%" == "on" (
+ if %ERROR_CODE% NEQ 0 exit %ERROR_CODE%
+)
+
+exit /B %ERROR_CODE%
diff --git a/browsermob-rest/pom.xml b/browsermob-rest/pom.xml
index 961360ca4..3b2716ca1 100644
--- a/browsermob-rest/pom.xml
+++ b/browsermob-rest/pom.xml
@@ -12,12 +12,13 @@
4.0.0
browsermob-rest
+ BrowserMob Proxy REST Module
net.lightbody.bmp
browsermob-core
- 2.0-beta-10-SNAPSHOT
+ ${project.version}
diff --git a/pom.xml b/pom.xml
index 905753ece..e88545d01 100644
--- a/pom.xml
+++ b/pom.xml
@@ -7,7 +7,7 @@
browsermob-core
browsermob-rest
- BrowserMob Proxy
+ BrowserMob Proxy Parent Project
A programmatic HTTP/S designed for performance and functional testing
http://bmp.lightbody.net
pom
@@ -51,59 +51,6 @@
2.4.4
-
-
- release
-
-
-
-
- org.codehaus.mojo
- appassembler-maven-plugin
- 1.1.1
-
- flat
- lib
-
-
- net.lightbody.bmp.proxy.Main
- browsermob-proxy
-
-
-
-
-
- make-assembly
- install
-
- assemble
-
-
-
-
-
- maven-assembly-plugin
- 2.4
-
-
- src/main/assembly.xml
-
-
-
-
- make-assembly
- install
-
- single
-
-
-
-
-
-
-
-
-
@@ -327,6 +274,18 @@
+
+
+ release
+
+
+ browsermob-core
+ browsermob-rest
+ browsermob-dist
+
+
+
+
diff --git a/src/main/assembly.xml b/src/main/assembly.xml
deleted file mode 100644
index 443753b59..000000000
--- a/src/main/assembly.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
- bin
-
- zip
-
-
-
- ${project.basedir}/target/appassembler/bin
- /bin
- keep
- 0744
- 0755
-
-
- ${project.basedir}/target/appassembler/lib
- /lib
-
-
- ${project.basedir}/src/main/resources/sslSupport
- /ssl-support
-
-
- ${project.basedir}/target
-
- browsermob-proxy-${project.version}-sources.jar
- browsermob-proxy-${project.version}-javadoc.jar
-
- /
-
-
- ${project.basedir}/conf
-
- bmp-logging.properties
-
- /bin/conf
-
-
- ${project.basedir}
-
- LICENSE.txt
- README.txt
- README.md
-
- /
-
-
-