aboutsummaryrefslogtreecommitdiffstats
path: root/sdkmanager
diff options
context:
space:
mode:
Diffstat (limited to 'sdkmanager')
-rwxr-xr-xsdkmanager/app/etc/android8
-rwxr-xr-xsdkmanager/app/etc/android.bat4
2 files changed, 8 insertions, 4 deletions
diff --git a/sdkmanager/app/etc/android b/sdkmanager/app/etc/android
index 8feb5f2..b1dc839 100755
--- a/sdkmanager/app/etc/android
+++ b/sdkmanager/app/etc/android
@@ -82,6 +82,9 @@ else
jarpath="$frameworkdir/$jarfile"
fi
+# Get the current content of java.ext.dirs so that we can add to it instead of replacing
+javaExtDirs=`"${java_cmd}" -jar "${frameworkdir}/archquery.jar" java.ext.dirs`
+
# Figure out the path to the swt.jar for the current architecture.
# if ANDROID_SWT is defined, then just use this.
# else, if running in the Android source tree, then look for the correct swt folder in prebuilt
@@ -90,7 +93,7 @@ swtpath=""
if [ -n "$ANDROID_SWT" ]; then
swtpath="$ANDROID_SWT"
else
- vmarch=`${java_cmd} -jar "${frameworkdir}"/archquery.jar`
+ vmarch=`"${java_cmd}" -jar "${frameworkdir}/archquery.jar"`
if [ -n "$ANDROID_BUILD_TOP" ]; then
osname=`uname -s | tr A-Z a-z`
swtpath="${ANDROID_BUILD_TOP}/prebuilt/${osname}-${vmarch}/swt"
@@ -113,5 +116,4 @@ if [ -z "$1" ]; then
fi
# need to use "java.ext.dirs" because "-jar" causes classpath to be ignored
-# might need more memory, e.g. -Xmx128M
-exec "$java_cmd" -Xmx256M $os_opts $java_debug -Djava.ext.dirs="$frameworkdir" -Dcom.android.sdkmanager.toolsdir="$progdir" -jar "$jarpath" "$@"
+exec "$java_cmd" -Xmx256M $os_opts $java_debug -Djava.ext.dirs="${javaExtDirs}:${frameworkdir}" -Dcom.android.sdkmanager.toolsdir="$progdir" -jar "$jarpath" "$@"
diff --git a/sdkmanager/app/etc/android.bat b/sdkmanager/app/etc/android.bat
index bd2fdec..e82fbab 100755
--- a/sdkmanager/app/etc/android.bat
+++ b/sdkmanager/app/etc/android.bat
@@ -42,6 +42,8 @@ set jar_path=lib\sdkmanager.jar
rem Set SWT.Jar path based on current architecture (x86 or x86_64)
for /f %%a in ('%java_exe% -jar lib\archquery.jar') do set swt_path=lib\%%a
+rem Get the current content of java.ext.dirs so that we can add to it instead of replacing
+for /f %%a in ('%java_exe% -jar lib\archquery.jar java.ext.dirs') do set orig_java_ext_dirs=%%a
if "%1 %2"=="update sdk" goto StartUi
if not "%1"=="" goto EndTempCopy
@@ -76,7 +78,7 @@ if exist %swt_path% goto SetPath
goto :EOF
:SetPath
-set java_ext_dirs=%swt_path%;lib\
+set java_ext_dirs=%orig_java_ext_dirs%;%swt_path%;lib\
rem Finally exec the java program and end here.
call %java_exe% -Djava.ext.dirs=%java_ext_dirs% -Dcom.android.sdkmanager.toolsdir="%tools_dir%" -Dcom.android.sdkmanager.workdir="%work_dir%" -jar %jar_path% %*