Merge "Run dx tests with Java 11 by default"
diff --git a/dx/etc/dx b/dx/etc/dx
index 632af43..05ad6b8 100644
--- a/dx/etc/dx
+++ b/dx/etc/dx
@@ -86,4 +86,4 @@
jarpath="$libdir/$jarfile"
fi
-exec java $javaOpts -jar "$jarpath" "$@"
+exec ${JAVA:-java} $javaOpts -jar "$jarpath" "$@"
diff --git a/dx/etc/jasmin b/dx/etc/jasmin
index f44c16f..20f45b5 100644
--- a/dx/etc/jasmin
+++ b/dx/etc/jasmin
@@ -36,4 +36,4 @@
libdir=`dirname $progdir`/framework
-exec java -jar $libdir/jasmin.jar "$@"
+exec ${JAVA:-java} -jar $libdir/jasmin.jar "$@"
diff --git a/dx/etc/mainDexClasses b/dx/etc/mainDexClasses
index 4092a91..adee89c 100755
--- a/dx/etc/mainDexClasses
+++ b/dx/etc/mainDexClasses
@@ -177,4 +177,4 @@
-libraryjars "${shrinkedAndroidJar}" -dontoptimize -dontobfuscate -dontpreverify \
-include "${baserules}" -include "${extrarules}" 1>/dev/null || exit 10
-java -cp "$jarpath" com.android.multidex.MainDexListBuilder ${disableKeepAnnotated} "${tmpOut}" ${@} || exit 11
+${JAVA} -cp "$jarpath" com.android.multidex.MainDexListBuilder ${disableKeepAnnotated} "${tmpOut}" ${@} || exit 11
diff --git a/dx/tests/029-unit-Bits/run b/dx/tests/029-unit-Bits/run
index 6bdcac1..d6c733c 100644
--- a/dx/tests/029-unit-Bits/run
+++ b/dx/tests/029-unit-Bits/run
@@ -27,7 +27,7 @@
fi
done
-java -cp $dxtestsjar:$dxjar:$junitjar junit.textui.TestRunner com.android.dx.util.BitsTest > unit-out.txt 2>&1
+${JAVA} -cp $dxtestsjar:$dxjar:$junitjar junit.textui.TestRunner com.android.dx.util.BitsTest > unit-out.txt 2>&1
if [ "$?" = "0" ]; then
echo "Yay!"
diff --git a/dx/tests/033-unit-IntList/run b/dx/tests/033-unit-IntList/run
index b226ad4..936e533 100644
--- a/dx/tests/033-unit-IntList/run
+++ b/dx/tests/033-unit-IntList/run
@@ -27,7 +27,7 @@
fi
done
-java -cp $dxtestsjar:$dxjar:$junitjar junit.textui.TestRunner com.android.dx.util.IntListTest > unit-out.txt 2>&1
+${JAVA} -cp $dxtestsjar:$dxjar:$junitjar junit.textui.TestRunner com.android.dx.util.IntListTest > unit-out.txt 2>&1
if [ "$?" = "0" ]; then
echo "Yay!"
diff --git a/dx/tests/116-leb128/run b/dx/tests/116-leb128/run
index bc384a3..12b2f69 100644
--- a/dx/tests/116-leb128/run
+++ b/dx/tests/116-leb128/run
@@ -27,7 +27,7 @@
fi
done
-java -classpath $dxjar:$junitjar:. junit.textui.TestRunner com.android.dx.util.Leb128UtilsTest > unit-out.txt 2>&1
+${JAVA} -classpath $dxjar:$junitjar:. junit.textui.TestRunner com.android.dx.util.Leb128UtilsTest > unit-out.txt 2>&1
if [ "$?" = "0" ]; then
echo "Yay!"
else
diff --git a/dx/tests/117-modified-utf8/run b/dx/tests/117-modified-utf8/run
index 7a2143a..db9b7c5 100644
--- a/dx/tests/117-modified-utf8/run
+++ b/dx/tests/117-modified-utf8/run
@@ -27,7 +27,7 @@
fi
done
-java -classpath $dxjar:$junitjar:. junit.textui.TestRunner com.android.dx.util.Mutf8Test > unit-out.txt 2>&1
+${JAVA} -classpath $dxjar:$junitjar:. junit.textui.TestRunner com.android.dx.util.Mutf8Test > unit-out.txt 2>&1
if [ "$?" = "0" ]; then
echo "Yay!"
diff --git a/dx/tests/127-merge-stress/run b/dx/tests/127-merge-stress/run
index a189cb1..ccb055b 100755
--- a/dx/tests/127-merge-stress/run
+++ b/dx/tests/127-merge-stress/run
@@ -69,4 +69,4 @@
exit 1
fi
-java -cp .:$dxjar -ea -esa com.android.dx.merge.MergeTest "${validdexes[@]}" > /dev/null
+${JAVA} -cp .:$dxjar -ea -esa com.android.dx.merge.MergeTest "${validdexes[@]}" > /dev/null
diff --git a/dx/tests/131-perf/run b/dx/tests/131-perf/run
index b4998fe..91d59a1 100644
--- a/dx/tests/131-perf/run
+++ b/dx/tests/131-perf/run
@@ -68,7 +68,7 @@
mkdir out
sleep 2
- java -classpath . ClassGen $first $TEST_SIZE $FIELDS $METHODS || exit 1
+ ${JAVA} -classpath . ClassGen $first $TEST_SIZE $FIELDS $METHODS || exit 1
first=`expr $TEST_SIZE + 1`
${JAVAC} ${JAVAC_OPTIONS} -d classes `find src -name '*.java'` || exit 1
diff --git a/dx/tests/134-maindexlist-lambdas/run b/dx/tests/134-maindexlist-lambdas/run
index 4617312..ca63e37 100644
--- a/dx/tests/134-maindexlist-lambdas/run
+++ b/dx/tests/134-maindexlist-lambdas/run
@@ -28,4 +28,4 @@
jar cf classes.jar -C classes .
jar cf traceOut.jar -C traceOut .
-java -classpath $dxjar com.android.multidex.MainDexListBuilder traceOut.jar classes.jar | sort
+${JAVA} -classpath $dxjar com.android.multidex.MainDexListBuilder traceOut.jar classes.jar | sort
diff --git a/dx/tests/135-invoke-custom/build b/dx/tests/135-invoke-custom/build
index 4d7c400..eb8701d 100755
--- a/dx/tests/135-invoke-custom/build
+++ b/dx/tests/135-invoke-custom/build
@@ -34,5 +34,5 @@
fi
(cd "${SRC_PATH}" && javac -cp "${ASM_CLASSPATH}" -d "${BUILD_PATH}" invokecustom/*.java) || fail "javac error"
-(cd "${SCRIPT_PATH}" && java -cp "${ASM_CLASSPATH}:${BUILD_PATH}" invokecustom.TestGenerator "${BUILD_PATH}") || fail "generator failure"
+(cd "${SCRIPT_PATH}" && ${JAVA} -cp "${ASM_CLASSPATH}:${BUILD_PATH}" invokecustom.TestGenerator "${BUILD_PATH}") || fail "generator failure"
(cd "${BUILD_PATH}" && jar cf "${JAR_FILE}" invokecustom/InvokeCustom.class invokecustom/Super.class ) || fail "jar creation error"
diff --git a/dx/tests/135-invoke-custom/info.txt b/dx/tests/135-invoke-custom/info.txt
index ad54d01..14ebe84 100644
--- a/dx/tests/135-invoke-custom/info.txt
+++ b/dx/tests/135-invoke-custom/info.txt
@@ -3,4 +3,4 @@
When modifying this test please ensure that the following produce the same output:
$ art -cp invokecustom.dex invokecustom.InvokeCustom
-$ java -cp invokecustom.jar invokecustom.InvokeCustom
+$ ${JAVA} -cp invokecustom.jar invokecustom.InvokeCustom
diff --git a/dx/tests/137-dexmerger-dex38/build b/dx/tests/137-dexmerger-dex38/build
index 3a89199..33c7774 100755
--- a/dx/tests/137-dexmerger-dex38/build
+++ b/dx/tests/137-dexmerger-dex38/build
@@ -34,5 +34,5 @@
fi
(cd "${SRC_PATH}" && javac -cp "${ASM_CLASSPATH}" -d "${BUILD_PATH}" invokecustom/*.java) || fail "javac error"
-(cd "${SCRIPT_PATH}" && java -cp "${ASM_CLASSPATH}:${BUILD_PATH}" invokecustom.TestGenerator "${BUILD_PATH}") || fail "generator failure"
+(cd "${SCRIPT_PATH}" && ${JAVA} -cp "${ASM_CLASSPATH}:${BUILD_PATH}" invokecustom.TestGenerator "${BUILD_PATH}") || fail "generator failure"
(cd "${BUILD_PATH}" && jar cf "${JAR_FILE}" invokecustom/InvokeCustom*.class invokecustom/Super.class ) || fail "jar creation error"
diff --git a/dx/tests/137-dexmerger-dex38/run b/dx/tests/137-dexmerger-dex38/run
index 65e70b7..70c77ec 100755
--- a/dx/tests/137-dexmerger-dex38/run
+++ b/dx/tests/137-dexmerger-dex38/run
@@ -21,6 +21,6 @@
dx --min-sdk-version=26 --dex --output="${CLASS/%.class/.dex}" "${CLASS}" 2>&1
done
)
-java -cp $(dirname $(which dx))/../framework/dx.jar com.android.dx.merge.DexMerger \
+${JAVA} -cp $(dirname $(which dx))/../framework/dx.jar com.android.dx.merge.DexMerger \
out.dex invokecustom/*.dex >& /dev/null
dexdump -d out.dex
diff --git a/dx/tests/142-const-method-handle/build b/dx/tests/142-const-method-handle/build
index 1658bca..df5fe05 100755
--- a/dx/tests/142-const-method-handle/build
+++ b/dx/tests/142-const-method-handle/build
@@ -34,5 +34,5 @@
fi
(cd "${SRC_PATH}" && javac -cp "${ASM_CLASSPATH}" -d "${BUILD_PATH}" Main.java constmethodhandle/*.java) || fail "javac error"
-(cd "${SCRIPT_PATH}" && java -cp "${ASM_CLASSPATH}:${BUILD_PATH}" constmethodhandle.TestGenerator "${BUILD_PATH}") || fail "generator failure"
+(cd "${SCRIPT_PATH}" && ${JAVA} -cp "${ASM_CLASSPATH}:${BUILD_PATH}" constmethodhandle.TestGenerator "${BUILD_PATH}") || fail "generator failure"
(cd "${BUILD_PATH}" && jar cf "${JAR_FILE}" Main.class constmethodhandle/ConstTest.class) || fail "jar creation error"
diff --git a/dx/tests/run-test b/dx/tests/run-test
index a781d8d..cf80cc0 100755
--- a/dx/tests/run-test
+++ b/dx/tests/run-test
@@ -35,7 +35,7 @@
if [[ -z "${JAVA_HOME}" ]]; then
unix=$(uname | tr '[A-Z]' '[a-z]')
- JAVA_HOME="${progdir}/../../../prebuilts/jdk/jdk8/${unix}-x86"
+ JAVA_HOME="${progdir}/../../../prebuilts/jdk/jdk11/${unix}-x86"
fi
if [[ ! -d "${JAVA_HOME}" ]]; then
@@ -49,6 +49,12 @@
exit 1
fi
+export JAVA="${JAVA_HOME}/bin/java"
+if [ "!" -e "$JAVA" ]; then
+ echo "Missing JAVA executable: ${JAVA}" 1>&2
+ exit 1
+fi
+
info="info.txt"
run="run"
expected="expected.txt"