test/java/lang/instrument/appendToClassLoaderSearch/CircularityErrorTest.sh

Print this page

        

*** 32,63 **** then echo "TESTSRC not set. Test cannot execute. Failed." exit 1 fi . ${TESTSRC}/CommonSetup.sh # Setup to create circularity condition # B extends A # This yields us A.jar (containing A.class) and B.keep (class file) rm -f "${TESTCLASSES}"/A.java "${TESTCLASSES}"/B.java cp "${TESTSRC}"/A.1 "${TESTCLASSES}"/A.java cp "${TESTSRC}"/B.1 "${TESTCLASSES}"/B.java (cd "${TESTCLASSES}"; \ ! $JAVAC A.java B.java; \ ! $JAVAC -d . "${TESTSRC}"/CircularityErrorTest.java; \ ! $JAR cf A.jar A.class; \ rm -f A.class; mv B.class B.keep) # A extends B # This yields us A.class rm -f "${TESTCLASSES}"/A.java "${TESTCLASSES}"/B.java cp "${TESTSRC}"/A.2 "${TESTCLASSES}"/A.java cp "${TESTSRC}"/B.2 "${TESTCLASSES}"/B.java (cd "${TESTCLASSES}"; \ ! $JAVAC A.java B.java; rm -f B.class A.java B.java) # Move B.keep to B.class creates the A extends B and # B extends A condition. (cd "${TESTCLASSES}"; mv B.keep B.class) --- 32,68 ---- then echo "TESTSRC not set. Test cannot execute. Failed." exit 1 fi + if [ "${COMPILEJAVA}" = "" ] + then + COMPILEJAVA="${TESTJAVA}" + fi + . ${TESTSRC}/CommonSetup.sh # Setup to create circularity condition # B extends A # This yields us A.jar (containing A.class) and B.keep (class file) rm -f "${TESTCLASSES}"/A.java "${TESTCLASSES}"/B.java cp "${TESTSRC}"/A.1 "${TESTCLASSES}"/A.java cp "${TESTSRC}"/B.1 "${TESTCLASSES}"/B.java (cd "${TESTCLASSES}"; \ ! $JAVAC ${TESTJAVACOPTS} ${TESTTOOLVMOPTS} A.java B.java; \ ! $JAVAC ${TESTJAVACOPTS} ${TESTTOOLVMOPTS} -d . "${TESTSRC}"/CircularityErrorTest.java; \ ! $JAR ${TESTTOOLVMOPTS} cf A.jar A.class; \ rm -f A.class; mv B.class B.keep) # A extends B # This yields us A.class rm -f "${TESTCLASSES}"/A.java "${TESTCLASSES}"/B.java cp "${TESTSRC}"/A.2 "${TESTCLASSES}"/A.java cp "${TESTSRC}"/B.2 "${TESTCLASSES}"/B.java (cd "${TESTCLASSES}"; \ ! $JAVAC ${TESTJAVACOPTS} ${TESTTOOLVMOPTS} A.java B.java; rm -f B.class A.java B.java) # Move B.keep to B.class creates the A extends B and # B extends A condition. (cd "${TESTCLASSES}"; mv B.keep B.class)
*** 65,75 **** MANIFEST="${TESTCLASSES}"/agent.mf rm -f "${MANIFEST}" echo "Premain-Class: CircularityErrorTest" > "${MANIFEST}" # Setup test case as an agent ! $JAR -cfm "${TESTCLASSES}"/CircularityErrorTest.jar "${MANIFEST}" \ -C "${TESTCLASSES}" CircularityErrorTest.class # Finally we run the test (cd "${TESTCLASSES}"; $JAVA ${TESTVMOPTS} -javaagent:CircularityErrorTest.jar CircularityErrorTest) --- 70,80 ---- MANIFEST="${TESTCLASSES}"/agent.mf rm -f "${MANIFEST}" echo "Premain-Class: CircularityErrorTest" > "${MANIFEST}" # Setup test case as an agent ! $JAR ${TESTTOOLVMOPTS} -cfm "${TESTCLASSES}"/CircularityErrorTest.jar "${MANIFEST}" \ -C "${TESTCLASSES}" CircularityErrorTest.class # Finally we run the test (cd "${TESTCLASSES}"; $JAVA ${TESTVMOPTS} -javaagent:CircularityErrorTest.jar CircularityErrorTest)