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 - - / - - -