JEP-295 AOT compilation issue with JDK 10

Vladimir Kozlov vladimir.kozlov at oracle.com
Fri Mar 30 00:20:03 UTC 2018


Thank you for trying AOT!

I ran the same command with JDK10 I build myself on Linux-x64 (Oracle's 
distro) from latest jdk10 sources and it passed.

I also downloaded official JDK10 from 
http://www.oracle.com/technetwork/java/javase/downloads/jdk10-downloads-4416644.html

$ java -version
java version "10" 2018-03-20
Java(TM) SE Runtime Environment 18.3 (build 10+46)
Java HotSpot(TM) 64-Bit Server VM 18.3 (build 10+46, mixed mode)

And it passed too.

Something is wrong with JDK you are using (damaged?):

*Caused by: java.lang.ClassFormatError: Incompatible magic value 0 in 
class file jdk/nio/zipfs/ZipFileSystemProvider*

If you still want to try you can exclude this class from compilation - 
add next line to your java.base-list.txt file:

exclude jdk.nio.zipfs.ZipFileSystemProvider.*

Regards,
Vladimir

On 3/29/18 4:35 PM, Leonardo Loch Zanivan wrote:
> Hi
> 
> Does anyone know if JDK 10+46 has problems with JEP-295 (AOT)?
> 
> I'm experiencing a weird exception when trying to compile the java.base
> module, note that the same command works with JDK 9.
> 
> *java -version*
> *openjdk version "10" 2018-03-20*
> *OpenJDK Runtime Environment (build 10+46-Debian-2)*
> *OpenJDK 64-Bit Server VM (build 10+46-Debian-2, mixed mode)*
> 
> *jaotc -J-XX:+UseCompressedOops -J-XX:+UseG1GC -J-Xmx4g
> --compile-for-tiered --info --compile-commands
> /opt/share/java.base-list.txt --output /opt/share/libjava.base-coop.so
> <http://libjava.base-coop.so> --module java.base*
> 
> *Compiling /opt/share/libjava.base-coop.so...*
> * (7 ms)*
> *Exception in thread "main" java.util.ServiceConfigurationError:
> java.nio.file.spi.FileSystemProvider: Unable to load
> jdk.nio.zipfs.ZipFileSystemProvider*
> * at java.base/java.util.ServiceLoader.fail(ServiceLoader.java:581)*
> * at java.base/java.util.ServiceLoader.loadProvider(ServiceLoader.java:853)*
> * at java.base/java.util.ServiceLoader.access$600(ServiceLoader.java:390)*
> * at
> java.base/java.util.ServiceLoader$ModuleServicesLookupIterator.hasNext(ServiceLoader.java:1076)*
> * at java.base/java.util.ServiceLoader$2.hasNext(ServiceLoader.java:1299)*
> * at java.base/java.util.ServiceLoader$3.hasNext(ServiceLoader.java:1384)*
> * at
> java.base/java.nio.file.spi.FileSystemProvider.loadInstalledProviders(FileSystemProvider.java:119)*
> * at
> java.base/java.nio.file.spi.FileSystemProvider.access$000(FileSystemProvider.java:77)*
> * at
> java.base/java.nio.file.spi.FileSystemProvider$1.run(FileSystemProvider.java:169)*
> * at
> java.base/java.nio.file.spi.FileSystemProvider$1.run(FileSystemProvider.java:166)*
> * at java.base/java.security.AccessController.doPrivileged(Native Method)*
> * at
> java.base/java.nio.file.spi.FileSystemProvider.installedProviders(FileSystemProvider.java:166)*
> * at
> java.base/java.nio.file.FileSystems.getFileSystem(FileSystems.java:236)*
> * at
> jdk.aot/jdk.tools.jaotc.collect.module.ModuleSourceProvider.<init>(ModuleSourceProvider.java:44)*
> * at
> jdk.aot/jdk.tools.jaotc.Collector.collectClassesToCompile(Collector.java:57)*
> * at jdk.aot/jdk.tools.jaotc.Main.run(Main.java:134)*
> * at jdk.aot/jdk.tools.jaotc.Main.run(Main.java:101)*
> * at jdk.aot/jdk.tools.jaotc.Main.main(Main.java:80)*
> *Caused by: java.lang.ClassFormatError: Incompatible magic value 0 in class
> file jdk/nio/zipfs/ZipFileSystemProvider*
> * at java.base/java.lang.ClassLoader.defineClass2(Native Method)*
> * at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1101)*
> * at
> java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:206)*
> * at
> java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:760)*
> * at
> java.base/jdk.internal.loader.BuiltinClassLoader.findClassInModuleOrNull(BuiltinClassLoader.java:681)*
> * at
> java.base/jdk.internal.loader.BuiltinClassLoader.findClass(BuiltinClassLoader.java:562)*
> * at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:611)*
> * at java.base/java.lang.Class.forName(Class.java:450)*
> * at java.base/java.util.ServiceLoader.loadProvider(ServiceLoader.java:851)*
> * ... 16 more*
> 
> --
> Leonardo Zanivan
> 


More information about the jdk-dev mailing list