Hey, Currently I have the use case that I have to set additional sys_vars in karaf (those -Dthings). In specific, to set wicket to development mode I have to add a -Dwicket.configuration=development. BUT I don't want to set those options directly in the script (karaf.bat/".sh").
My idea was to add a KARAF_OPTS var which is used during calling the script. Then you can do: export KARAF_OPTS=-Dwicket.configuration=development bin/karaf The changes are quite trivial (see patch; applies to karaf-2.1.x; but should also apply to master IMHO). If you do not export KARAF_OPTS the part is simply empty and will not change the behaviour, otherwise you can add system props as you like. Is there a better way? WDYT? kind regards, andreas
diff --git a/assembly/src/main/distribution/unix-shell/bin/karaf
b/assembly/src/main/distribution/unix-shell/bin/karaf
index 636d78f..bb31df7 100755
--- a/assembly/src/main/distribution/unix-shell/bin/karaf
+++ b/assembly/src/main/distribution/unix-shell/bin/karaf
@@ -338,7 +338,7 @@ run() {
CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
fi
cd "$KARAF_BASE"
- exec "$JAVA" $JAVA_OPTS
-Djava.endorsed.dirs="${JAVA_HOME}/jre/lib/endorsed:${JAVA_HOME}/lib/endorsed:${KARAF_HOME}/lib/endorsed"
-Djava.ext.dirs="${JAVA_HOME}/jre/lib/ext:${JAVA_HOME}/lib/ext:${KARAF_HOME}/lib/ext"
-Dkaraf.instances="${KARAF_HOME}/instances" -Dkaraf.home="$KARAF_HOME"
-Dkaraf.base="$KARAF_BASE" -Dkaraf.data="$KARAF_DATA"
-Djava.util.logging.config.file="$KARAF_BASE/etc/java.util.logging.properties"
$OPTS -classpath "$CLASSPATH" $MAIN "$@"
+ exec "$JAVA" $JAVA_OPTS
-Djava.endorsed.dirs="${JAVA_HOME}/jre/lib/endorsed:${JAVA_HOME}/lib/endorsed:${KARAF_HOME}/lib/endorsed"
-Djava.ext.dirs="${JAVA_HOME}/jre/lib/ext:${JAVA_HOME}/lib/ext:${KARAF_HOME}/lib/ext"
-Dkaraf.instances="${KARAF_HOME}/instances" -Dkaraf.home="$KARAF_HOME"
-Dkaraf.base="$KARAF_BASE" -Dkaraf.data="$KARAF_DATA"
-Djava.util.logging.config.file="$KARAF_BASE/etc/java.util.logging.properties"
$KARAF_OPTS $OPTS -classpath "$CLASSPATH" $MAIN "$@"
}
main() {
diff --git a/assembly/src/main/distribution/windows-text/bin/karaf.bat
b/assembly/src/main/distribution/windows-text/bin/karaf.bat
index 96817bf..55c137d 100755
--- a/assembly/src/main/distribution/windows-text/bin/karaf.bat
+++ b/assembly/src/main/distribution/windows-text/bin/karaf.bat
@@ -246,7 +246,7 @@ if "%KARAF_PROFILER%" == "" goto :RUN
SET ARGS=%1 %2 %3 %4 %5 %6 %7 %8
rem Execute the Java Virtual Machine
cd %KARAF_BASE%
- "%JAVA%" %JAVA_OPTS% %OPTS% -classpath "%CLASSPATH%"
-Djava.endorsed.dirs="%JAVA_HOME%\jre\lib\endorsed;%JAVA_HOME%\lib\endorsed;%KARAF_HOME%\lib\endorsed"
-Djava.ext.dirs="%JAVA_HOME%\jre\lib\ext;%JAVA_HOME%\lib\ext;%KARAF_HOME%\lib\ext"
-Dkaraf.instances="%KARAF_HOME%\instances" -Dkaraf.home="%KARAF_HOME%"
-Dkaraf.base="%KARAF_BASE%" -Dkaraf.data="%KARAF_DATA%"
-Djava.util.logging.config.file="%KARAF_BASE%\etc\java.util.logging.properties"
%MAIN% %ARGS%
+ "%JAVA%" %JAVA_OPTS% %OPTS% -classpath "%CLASSPATH%"
-Djava.endorsed.dirs="%JAVA_HOME%\jre\lib\endorsed;%JAVA_HOME%\lib\endorsed;%KARAF_HOME%\lib\endorsed"
-Djava.ext.dirs="%JAVA_HOME%\jre\lib\ext;%JAVA_HOME%\lib\ext;%KARAF_HOME%\lib\ext"
-Dkaraf.instances="%KARAF_HOME%\instances" -Dkaraf.home="%KARAF_HOME%"
-Dkaraf.base="%KARAF_BASE%" -Dkaraf.data="%KARAF_DATA%"
-Djava.util.logging.config.file="%KARAF_BASE%\etc\java.util.logging.properties"
%KARAF_OPTS% %MAIN% %ARGS%
rem # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #
pgpXQo9slonE2.pgp
Description: PGP signature
