diff options
Diffstat (limited to 'java.mvn.mk')
-rw-r--r-- | java.mvn.mk | 21 |
1 files changed, 19 insertions, 2 deletions
diff --git a/java.mvn.mk b/java.mvn.mk index 7cdc664..1f144a3 100644 --- a/java.mvn.mk +++ b/java.mvn.mk @@ -16,6 +16,7 @@ TEST_CLASSES_DIR = ${BUILD_DIR}/test-classes SRC_PATH = src MAIN_SRC_PATH = ${SRC_PATH}/main/java TEST_SRC_PATH = ${SRC_PATH}/test/java +LIB_DIR = ${BUILD_DIR}/libs JAR = ${BUILD_DIR}/${ARTIFACT_ID}-${VERSION}.jar MVN_FLAGS = @@ -32,7 +33,23 @@ TEST_OBJ != echo ${TEST_SRC} | sed -E 's|${TEST_SRC_PATH}|${TEST_CLASSES_DIR} DBG_PORT = 1044 DBG_FLAGS = -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=${DBG_PORT} -all: .classpath ${MAIN_OBJ} ${TEST_OBJ} +all: .classpath ${MAIN_OBJ} ${TEST_OBJ} ${LIB_DIR} + +dist: ${LIB_DIR} ${BUILD_DIR}/dist/${NAME}.sh + +${BUILD_DIR}/dist: + @mkdir -p ${BUILD_DIR}/dist + @cp -R ${CLASSES_DIR}/* ${BUILD_DIR}/dist/ + @cp -R ${LIB_DIR} ${BUILD_DIR}/dist/ + +${BUILD_DIR}/dist/${NAME}.sh: ${BUILD_DIR}/dist .main-class + @echo '#!/bin/sh' > $@ + @echo '' >> $@ + @echo 'BASEDIR=$$(dirname $$(realpath $$0))' >> $@ + @echo 'java -classpath $$BASEDIR:$$BASEDIR/libs/* '`cat .main-class`' $$@' >> $@ + @echo '' >> $@ + @chmod +x $@ + run: .classpath .main-class ${JAVA} `cat .main-class` ${ARGS} @@ -43,7 +60,7 @@ debug: .classpath .main-class debugger: ${JDB} -sourcepath ${MAIN_SRC_PATH} -attach ${DBG_PORT} -libs: +${LIB_DIR}: pom.xml ${MVN} install dependency:copy-dependencies -DexcludeScope=provided -DoutputDirectory=${BUILD_DIR}/libs .main-class: |