Path: blob/master/test/functional/cmdLineTests/URLClassLoaderTests/JarExt/readme.txt
12602 views
1#2# Copyright (c) 2001, 2018 IBM Corp. and others3#4# This program and the accompanying materials are made available under5# the terms of the Eclipse Public License 2.0 which accompanies this6# distribution and is available at https://www.eclipse.org/legal/epl-2.0/7# or the Apache License, Version 2.0 which accompanies this distribution and8# is available at https://www.apache.org/licenses/LICENSE-2.0.9#10# This Source Code may also be made available under the following11# Secondary Licenses when the conditions for such availability set12# forth in the Eclipse Public License, v. 2.0 are satisfied: GNU13# General Public License, version 2 with the GNU Classpath14# Exception [1] and GNU General Public License, version 2 with the15# OpenJDK Assembly Exception [2].16#17# [1] https://www.gnu.org/software/classpath/license.html18# [2] http://openjdk.java.net/legal/assembly-exception.html19#20# SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception21#2223These tests check that the Jar Extension mechanisms and Jar indexing work with shared classes2425Note here that "noTimestampChecks" stops the shared classes support from recognising that jar files have been updated2627JarExtensionsTests.BuildInitial128Builds A.jar, B.jar, C.jar and D.jar where:29B.jar specifies C.jar as a "Class-Path:" in its manifest30Builds E.jar, E1.jar, F.jar, F1.jar, G.jar, G1.jar, H.jar and H1.jar where:31E.jar specifies E1.jar as a "Class-Path:" in its manifest32F.jar specifies F1.jar, G.jar and G1.jar as a "Class-Path:" in its manifest33H.jar specifies H1.jar as a "Class-Path:" in its manifest34These Jars do not use indexing35All of the data classes will print "CACHED" when they are loaded.3637JarExtensionsTests.SingleJarInManifest38Run A_Main which loads classes from A.jar, B.jar, C.jar and D.jar, but C.jar is not on the classpath.3940JarExtensionsTests.MultipleJarsInManifests41Run E_Main which loads classes from E.jar, E1.jar, F.jar, F1.jar, G.jar, G1.jar, H.jar and H1.jar,42but E1.jar, F1.jar, G.jar, G1.jar and H1.jar are not on the classpath4344JarExtensionsTests.BuildVerify145Rebuilds all of the jar files with similar class files which output "LOCAL" instead of "CACHED" when they are loaded.46The classes are in the VerifyClasses subdirectory4748JarExtensionsTests.SingleJarInManifest.Verify149Runs A_Main with "noTimestampChecks" which means that if the original "CACHED" classes are properly cached,50they will be loaded and run. If the classes from the new jar files are loaded, "LOCAL" is printed, which is an error.5152JarExtensionsTests.SingleJarInManifest.Verify253Runs A_Main without "noTimestampChecks". Expects that the JVM will spot that the jar files have changed and then54even though the required classes are in the cache, it should load the new ones from disk instead.5556JarExtensionsTests.MultipleJarsInManifests.Verify157Runs E_Main with "noTimestampChecks" which means that if the original "CACHED" classes are properly cached,58they will be loaded and run. If the classes from the new jar files are loaded, "LOCAL" is printed, which is an error.5960JarExtensionsTests.MultipleJarsInManifests.Verify261Runs E_Main without "noTimestampChecks". Expects that the JVM will spot that the jar files have changed and then62even though the required classes are in the cache, it should load the new ones from disk instead.6364JarExtensionsTests.BuildInitial265Exactly the same as JarExtensionsTests.BuildInitial1 - rebuild the jars with "CACHED" classes6667JarExtensionsTests.CreateJarIndexes68Add indexes to jar files B.jar E.jar F.jar and H.jar, which are the jars containing the "Class-Path:" tag6970JarExtensionsTests.SingleJarInManifestWithIndex71As JarExtensionsTests.SingleJarInManifest only with the additional jar indexes7273JarExtensionsTests.MultipleJarsInManifestsWithIndex74As JarExtensionsTests.MultipleJarsInManifests only with the additional jar indexes7576JarExtensionsTests.BuildVerify277Exactly the same as JarExtensionsTests.BuildVerify1 - rebuild the jars with "LOCAL" classes7879JarExtensionsTests.CreateJarIndexes80Add indexes to jar files B.jar E.jar F.jar and H.jar, which are the jars containing the "Class-Path:" tag8182JarExtensionsTests.SingleJarInManifestWithIndex.Verify183As JarExtensionsTests.SingleJarInManifest.Verify1 only with the additional jar indexes8485JarExtensionsTests.SingleJarInManifestWithIndex.Verify286As JarExtensionsTests.SingleJarInManifest.Verify2 only with the additional jar indexes8788JarExtensionsTests.MultipleJarsInManifestsWithIndex.Verify189As JarExtensionsTests.MultipleJarsInManifests.Verify1 only with the additional jar indexes9091JarExtensionsTests.MultipleJarsInManifestsWithIndex.Verify292As JarExtensionsTests.MultipleJarsInManifests.Verify2 only with the additional jar indexes93949596