Changeset a36083a for core


Ignore:
Timestamp:
Jan 17, 2017 2:08:47 PM (4 years ago)
Author:
zzz <zzz@…>
Branches:
master
Children:
60c93f1
Parents:
7cae467
Message:

Utils: Java 9 yakkety workarounds

File:
1 edited

Legend:

Unmodified
Added
Removed
  • core/java/src/net/i2p/crypto/CryptoCheck.java

    r7cae467 ra36083a  
    66
    77/**
    8  * Moved from CryptixAESEngine and net.i2p.router.tasks.CryptoChecker
     8 * Moved from CryptixAESEngine and net.i2p.router.tasks.CryptoChecker.
     9 * This class does not do any logging. See CryptoChecker for the logging.
    910 *
    1011 * @since 0.9.23
     
    2930            } catch (GeneralSecurityException gse) {
    3031            }
     32        } catch (ExceptionInInitializerError eiie) {
     33            // Java 9 b134 bug
     34            // > java -jar build/i2p.jar cryptocheck
     35            // Exception in thread "main" java.lang.ExceptionInInitializerError
     36            //  at javax.crypto.JceSecurityManager.<clinit>(java.base@9-Ubuntu/JceSecurityManager.java:65)
     37            //  at javax.crypto.Cipher.getConfiguredPermission(java.base@9-Ubuntu/Cipher.java:2595)
     38            //  at javax.crypto.Cipher.getMaxAllowedKeyLength(java.base@9-Ubuntu/Cipher.java:2619)
     39            //  at net.i2p.crypto.CryptoCheck.<clinit>(CryptoCheck.java:19)
     40            //  at java.lang.Class.forName0(java.base@9-Ubuntu/Native Method)
     41            //  at java.lang.Class.forName(java.base@9-Ubuntu/Class.java:374)
     42            //  at net.i2p.util.CommandLine.exec(CommandLine.java:66)
     43            //  at net.i2p.util.CommandLine.main(CommandLine.java:51)
     44            // Caused by: java.lang.SecurityException: Can not initialize cryptographic mechanism
     45            //  at javax.crypto.JceSecurity.<clinit>(java.base@9-Ubuntu/JceSecurity.java:91)
     46            //  ... 8 more
     47            // Caused by: java.lang.NullPointerException
     48            //  at sun.nio.fs.UnixPath.normalizeAndCheck(java.base@9-Ubuntu/UnixPath.java:75)
     49            //  at sun.nio.fs.UnixPath.<init>(java.base@9-Ubuntu/UnixPath.java:69)
     50            //  at sun.nio.fs.UnixFileSystem.getPath(java.base@9-Ubuntu/UnixFileSystem.java:280)
     51            //  at java.nio.file.Paths.get(java.base@9-Ubuntu/Paths.java:84)
     52            //  at javax.crypto.JceSecurity.setupJurisdictionPolicies(java.base@9-Ubuntu/JceSecurity.java:254)
     53            //  at javax.crypto.JceSecurity.access$000(java.base@9-Ubuntu/JceSecurity.java:49)
     54            //  at javax.crypto.JceSecurity$1.run(java.base@9-Ubuntu/JceSecurity.java:82)
     55            //  at javax.crypto.JceSecurity$1.run(java.base@9-Ubuntu/JceSecurity.java:79)
     56            //  at java.security.AccessController.doPrivileged(java.base@9-Ubuntu/Native Method)
     57            //  at javax.crypto.JceSecurity.<clinit>(java.base@9-Ubuntu/JceSecurity.java:78)
     58            //  ... 8 more
    3159        }
    3260        _isUnlimited = unlimited;
Note: See TracChangeset for help on using the changeset viewer.