Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8274536

sun/security/tools/jarsigner/multiRelease/MVJarSigningTest.java fails due to recursive initialisation

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P2 P2
    • repo-loom
    • repo-loom
    • security-libs
    • None

      sun/security/tools/jarsigner/multiRelease/MVJarSigningTest.java is failing in the loom repo since the disabling of SHA-1 in jdk-18+18. It duplicates on all platforms with images builds.

      The loom repo has many changes that subtly change the order that classes are loaded and/or initialized and I suspect we are running into a lurking bug.

      WARNING: A command line option has enabled the Security Manager
      WARNING: The Security Manager is deprecated and will be removed in a future release
      Error: A JNI error has occurred, please check your installation and try again
      Exception in thread "main" java.util.ServiceConfigurationError: Locale provider adapter "CLDR"cannot be instantiated.
      at java.base/sun.util.locale.provider.LocaleProviderAdapter.forType(LocaleProviderAdapter.java:199)
      at java.base/sun.util.locale.provider.LocaleServiceProviderPool.findProviders(LocaleServiceProviderPool.java:302)
      at java.base/sun.util.locale.provider.LocaleServiceProviderPool.getLocalizedObjectImpl(LocaleServiceProviderPool.java:274)
      at java.base/sun.util.locale.provider.LocaleServiceProviderPool.getLocalizedObject(LocaleServiceProviderPool.java:256)
      at java.base/sun.util.locale.provider.CalendarDataUtility.retrieveFirstDayOfWeek(CalendarDataUtility.java:76)
      at java.base/java.util.Calendar.setWeekCountData(Calendar.java:3397)
      at java.base/java.util.Calendar.<init>(Calendar.java:1607)
      at java.base/java.util.GregorianCalendar.<init>(GregorianCalendar.java:738)
      at java.base/java.util.Calendar$Builder.build(Calendar.java:1492)
      at java.base/sun.security.util.DisabledAlgorithmConstraints$DenyAfterConstraint.<init>(DisabledAlgorithmConstraints.java:702)
      at java.base/sun.security.util.DisabledAlgorithmConstraints$Constraints.<init>(DisabledAlgorithmConstraints.java:419)
      at java.base/sun.security.util.DisabledAlgorithmConstraints.<init>(DisabledAlgorithmConstraints.java:144)
      at java.base/sun.security.util.DisabledAlgorithmConstraints.<init>(DisabledAlgorithmConstraints.java:118)
      at java.base/sun.security.util.DisabledAlgorithmConstraints$JarHolder.<clinit>(DisabledAlgorithmConstraints.java:96)
      at java.base/sun.security.util.DisabledAlgorithmConstraints.jarConstraints(DisabledAlgorithmConstraints.java:108)
      at java.base/sun.security.pkcs.SignerInfo.<clinit>(SignerInfo.java:61)
      at java.base/sun.security.pkcs.PKCS7.parseSignedData(PKCS7.java:390)
      at java.base/sun.security.pkcs.PKCS7.parse(PKCS7.java:174)
      at java.base/sun.security.pkcs.PKCS7.parse(PKCS7.java:142)
      at java.base/sun.security.pkcs.PKCS7.<init>(PKCS7.java:124)
      at java.base/sun.security.util.SignatureFileVerifier.<init>(SignatureFileVerifier.java:118)
      at java.base/java.util.jar.JarVerifier.processEntry(JarVerifier.java:302)
      at java.base/java.util.jar.JarVerifier.update(JarVerifier.java:234)
      at java.base/java.util.jar.JarFile.initializeVerifier(JarFile.java:763)
      at java.base/java.util.jar.JarFile.ensureInitialization(JarFile.java:1034)
      at java.base/java.util.jar.JavaUtilJarAccessImpl.ensureInitialization(JavaUtilJarAccessImpl.java:72)
      at java.base/jdk.internal.loader.URLClassPath$JarLoader$2.getManifest(URLClassPath.java:880)
      at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:848)
      at java.base/jdk.internal.loader.BuiltinClassLoader$4.run(BuiltinClassLoader.java:773)
      at java.base/jdk.internal.loader.BuiltinClassLoader$4.run(BuiltinClassLoader.java:768)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
      at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:781)
      at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
      at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
      at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
      at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
      at java.base/java.lang.Class.forName0(Native Method)
      at java.base/java.lang.Class.forName(Class.java:467)
      at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:791)
      at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:686)
      Caused by: java.lang.reflect.InvocationTargetException
      at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:85)
      at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
      at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
      at java.base/sun.util.locale.provider.LocaleProviderAdapter.forType(LocaleProviderAdapter.java:188)
      ... 39 more
      Caused by: java.util.ServiceConfigurationError: sun.util.locale.provider.LocaleDataMetaInfo: Unable to load sun.util.resources.cldr.provider.CLDRLocaleDataMetaInfo
      at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:586)
      at java.base/java.util.ServiceLoader.loadProvider(ServiceLoader.java:870)
      at java.base/java.util.ServiceLoader$ModuleServicesLookupIterator.hasNext(ServiceLoader.java:1084)
      at java.base/java.util.ServiceLoader$2.hasNext(ServiceLoader.java:1309)
      at java.base/java.util.ServiceLoader$3.hasNext(ServiceLoader.java:1393)
      at java.base/sun.util.cldr.CLDRLocaleProviderAdapter.lambda$new$0(CLDRLocaleProviderAdapter.java:86)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:569)
      at java.base/sun.util.cldr.CLDRLocaleProviderAdapter.<init>(CLDRLocaleProviderAdapter.java:85)
      ... 45 more
      Caused by: java.lang.NoClassDefFoundError: Could not initialize class javax.crypto.JceSecurity
      at java.base/javax.crypto.Cipher.getInstance(Cipher.java:547)
      at java.base/sun.security.pkcs12.PKCS12KeyStore.lambda$engineLoad$1(PKCS12KeyStore.java:2147)
      at java.base/sun.security.pkcs12.PKCS12KeyStore$RetryWithZero.run(PKCS12KeyStore.java:257)
      at java.base/sun.security.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:2145)
      at java.base/sun.security.util.KeyStoreDelegator.engineLoad(KeyStoreDelegator.java:221)
      at java.base/java.security.KeyStore.load(KeyStore.java:1473)
      at java.base/sun.security.util.PolicyUtil.getKeyStore(PolicyUtil.java:166)
      at java.base/sun.security.provider.PolicyFile.init(PolicyFile.java:532)
      at java.base/sun.security.provider.PolicyFile$4.run(PolicyFile.java:422)
      at java.base/sun.security.provider.PolicyFile$4.run(PolicyFile.java:394)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
      at java.base/sun.security.provider.PolicyFile.initPolicyFile(PolicyFile.java:394)
      at java.base/sun.security.provider.PolicyFile.initPolicyFile(PolicyFile.java:381)
      at java.base/sun.security.provider.PolicyFile.init(PolicyFile.java:338)
      at java.base/sun.security.provider.PolicyFile.<init>(PolicyFile.java:292)
      at java.base/java.security.Policy.loadPolicyProvider(Policy.java:221)
      at java.base/java.security.Policy.getPolicyNoCheck(Policy.java:191)
      at java.base/java.security.ProtectionDomain.implies(ProtectionDomain.java:325)
      at java.base/java.security.ProtectionDomain.impliesWithAltFilePerm(ProtectionDomain.java:357)
      at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:463)
      at java.base/java.security.AccessController.checkPermission(AccessController.java:1068)
      at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:416)
      at java.base/java.lang.SecurityManager.checkPackageAccess(SecurityManager.java:1332)
      at java.base/java.lang.ClassLoader$1.run(ClassLoader.java:690)
      at java.base/java.lang.ClassLoader$1.run(ClassLoader.java:688)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
      at java.base/java.lang.ClassLoader.checkPackageAccess(ClassLoader.java:688)
      at java.base/java.lang.ClassLoader.defineClass2(Native Method)
      at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1103)
      at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:182)
      at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:821)
      at java.base/jdk.internal.loader.BuiltinClassLoader.lambda$findClassInModuleOrNull$2(BuiltinClassLoader.java:743)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
      at java.base/jdk.internal.loader.BuiltinClassLoader.findClassInModuleOrNull(BuiltinClassLoader.java:744)
      at java.base/jdk.internal.loader.BuiltinClassLoader.findClass(BuiltinClassLoader.java:621)
      at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:632)
      at java.base/java.lang.Class.forName(Class.java:545)
      at java.base/java.util.ServiceLoader.lambda$loadProvider$1(ServiceLoader.java:864)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:569)
      at java.base/java.util.ServiceLoader.loadProvider(ServiceLoader.java:866)
      ... 51 more
      Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.Error: Circular loading of URL stream handler providers detected [in thread "main"]
      at java.base/java.net.URL.lookupViaProviders(URL.java:1352)
      at java.base/java.net.URL.getURLStreamHandler(URL.java:1440)
      at java.base/java.net.URL.<init>(URL.java:681)
      at java.base/java.net.URL.<init>(URL.java:570)
      at java.base/java.net.URL.<init>(URL.java:517)
      at java.base/javax.crypto.JceSecurity.<clinit>(JceSecurity.java:246)
      at java.base/javax.crypto.Cipher.getInstance(Cipher.java:547)
      at java.base/sun.security.pkcs12.PKCS12KeyStore.lambda$engineLoad$1(PKCS12KeyStore.java:2147)
      at java.base/sun.security.pkcs12.PKCS12KeyStore$RetryWithZero.run(PKCS12KeyStore.java:257)
      at java.base/sun.security.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:2145)
      at java.base/sun.security.util.KeyStoreDelegator.engineLoad(KeyStoreDelegator.java:221)
      at java.base/java.security.KeyStore.load(KeyStore.java:1473)
      at java.base/sun.security.util.PolicyUtil.getKeyStore(PolicyUtil.java:166)
      at java.base/sun.security.provider.PolicyFile.init(PolicyFile.java:532)
      at java.base/sun.security.provider.PolicyFile$4.run(PolicyFile.java:422)
      at java.base/sun.security.provider.PolicyFile$4.run(PolicyFile.java:394)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
      at java.base/sun.security.provider.PolicyFile.initPolicyFile(PolicyFile.java:394)
      at java.base/sun.security.provider.PolicyFile.initPolicyFile(PolicyFile.java:381)
      at java.base/sun.security.provider.PolicyFile.init(PolicyFile.java:338)
      at java.base/sun.security.provider.PolicyFile.<init>(PolicyFile.java:292)
      at java.base/java.security.Policy.loadPolicyProvider(Policy.java:221)
      at java.base/java.security.Policy.getPolicyNoCheck(Policy.java:191)
      at java.base/java.security.ProtectionDomain.implies(ProtectionDomain.java:325)
      at java.base/java.security.ProtectionDomain.impliesWithAltFilePerm(ProtectionDomain.java:357)
      at java.base/java.security.AccessControlContext.checkPermission(AccessControlContext.java:463)
      at java.base/java.security.AccessController.checkPermission(AccessController.java:1068)
      at java.base/java.lang.SecurityManager.checkPermission(SecurityManager.java:416)
      at java.base/java.lang.SecurityManager.checkPackageAccess(SecurityManager.java:1332)
      at java.base/java.lang.ClassLoader$1.run(ClassLoader.java:690)
      at java.base/java.lang.ClassLoader$1.run(ClassLoader.java:688)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
      at java.base/java.lang.ClassLoader.checkPackageAccess(ClassLoader.java:688)
      at java.security.jgss/sun.security.jgss.SunProvider.<init>(SunProvider.java:104)
      at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
      at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:85)
      at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
      at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499)
      at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:480)
      at java.base/java.util.ServiceLoader$ProviderImpl$2.run(ServiceLoader.java:797)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
      at java.base/java.util.ServiceLoader$ProviderImpl.newInstance(ServiceLoader.java:802)
      at java.base/java.util.ServiceLoader$ProviderImpl.get(ServiceLoader.java:729)
      at java.base/java.util.ServiceLoader$3.next(ServiceLoader.java:1403)
      at java.base/sun.security.jca.ProviderConfig$ProviderLoader.load(ProviderConfig.java:347)
      at java.base/sun.security.jca.ProviderConfig$3.run(ProviderConfig.java:254)
      at java.base/sun.security.jca.ProviderConfig$3.run(ProviderConfig.java:248)
      at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
      at java.base/sun.security.jca.ProviderConfig.doLoadProvider(ProviderConfig.java:248)
      at java.base/sun.security.jca.ProviderConfig.getProvider(ProviderConfig.java:226)
      at java.base/sun.security.jca.ProviderList.getProvider(ProviderList.java:268)
      at java.base/sun.security.jca.ProviderList.getService(ProviderList.java:381)
      at java.base/sun.security.jca.GetInstance.getInstance(GetInstance.java:157)
      at java.base/java.security.Security.getImpl(Security.java:694)
      at java.base/java.security.AlgorithmParameters.getInstance(AlgorithmParameters.java:157)
      at java.base/sun.security.pkcs12.PKCS12KeyStore.parseAlgParameters(PKCS12KeyStore.java:847)
      at java.base/sun.security.pkcs12.PKCS12KeyStore.engineLoad(PKCS12KeyStore.java:2113)
      ... 87 more

            mullan Sean Mullan
            alanb Alan Bateman
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: