From f66a5044e39f138c957feb4f04401fff022673ed Mon Sep 17 00:00:00 2001 From: themode Date: Wed, 26 Jan 2022 08:08:40 +0100 Subject: [PATCH] Include native-image config files in demo subproject --- .../META-INF/native-image/jni-config.json | 70 ++++++ .../predefined-classes-config.json | 8 + .../META-INF/native-image/proxy-config.json | 5 + .../META-INF/native-image/reflect-config.json | 202 ++++++++++++++++++ .../native-image/resource-config.json | 72 +++++++ .../native-image/serialization-config.json | 2 + 6 files changed, 359 insertions(+) create mode 100644 demo/src/main/resources/META-INF/native-image/jni-config.json create mode 100644 demo/src/main/resources/META-INF/native-image/predefined-classes-config.json create mode 100644 demo/src/main/resources/META-INF/native-image/proxy-config.json create mode 100644 demo/src/main/resources/META-INF/native-image/reflect-config.json create mode 100644 demo/src/main/resources/META-INF/native-image/resource-config.json create mode 100644 demo/src/main/resources/META-INF/native-image/serialization-config.json diff --git a/demo/src/main/resources/META-INF/native-image/jni-config.json b/demo/src/main/resources/META-INF/native-image/jni-config.json new file mode 100644 index 000000000..114d68c95 --- /dev/null +++ b/demo/src/main/resources/META-INF/native-image/jni-config.json @@ -0,0 +1,70 @@ +[ +{ + "name":"java.lang.Boolean", + "methods":[{"name":"getBoolean","parameterTypes":["java.lang.String"] }] +}, +{ + "name":"java.lang.ClassLoader", + "methods":[ + {"name":"getPlatformClassLoader","parameterTypes":[] }, + {"name":"loadClass","parameterTypes":["java.lang.String"] } + ] +}, +{ + "name":"jdk.internal.loader.ClassLoaders$PlatformClassLoader" +}, +{ + "name":"org.fusesource.jansi.internal.CLibrary", + "fields":[ + {"name":"HAVE_ISATTY"}, + {"name":"HAVE_TTYNAME"}, + {"name":"TCSADRAIN"}, + {"name":"TCSAFLUSH"}, + {"name":"TCSANOW"}, + {"name":"TIOCGETD"}, + {"name":"TIOCGWINSZ"}, + {"name":"TIOCSETD"}, + {"name":"TIOCSWINSZ"} + ] +}, +{ + "name":"org.fusesource.jansi.internal.CLibrary$Termios", + "fields":[ + {"name":"SIZEOF"}, + {"name":"c_cc"}, + {"name":"c_cflag"}, + {"name":"c_iflag"}, + {"name":"c_ispeed"}, + {"name":"c_lflag"}, + {"name":"c_oflag"}, + {"name":"c_ospeed"} + ] +}, +{ + "name":"org.fusesource.jansi.internal.CLibrary$WinSize", + "fields":[ + {"name":"SIZEOF"}, + {"name":"ws_col"}, + {"name":"ws_row"}, + {"name":"ws_xpixel"}, + {"name":"ws_ypixel"} + ] +}, +{ + "name":"org.graalvm.jniutils.JNIExceptionWrapperEntryPoints", + "methods":[{"name":"getClassName","parameterTypes":["java.lang.Class"] }] +}, +{ + "name":"sun.management.VMManagementImpl", + "fields":[ + {"name":"compTimeMonitoringSupport"}, + {"name":"currentThreadCpuTimeSupport"}, + {"name":"objectMonitorUsageSupport"}, + {"name":"otherThreadCpuTimeSupport"}, + {"name":"remoteDiagnosticCommandsSupport"}, + {"name":"synchronizerUsageSupport"}, + {"name":"threadAllocatedMemorySupport"}, + {"name":"threadContentionMonitoringSupport"} + ] +} +] diff --git a/demo/src/main/resources/META-INF/native-image/predefined-classes-config.json b/demo/src/main/resources/META-INF/native-image/predefined-classes-config.json new file mode 100644 index 000000000..0e79b2c5d --- /dev/null +++ b/demo/src/main/resources/META-INF/native-image/predefined-classes-config.json @@ -0,0 +1,8 @@ +[ + { + "type":"agent-extracted", + "classes":[ + ] + } +] + diff --git a/demo/src/main/resources/META-INF/native-image/proxy-config.json b/demo/src/main/resources/META-INF/native-image/proxy-config.json new file mode 100644 index 000000000..e33809b53 --- /dev/null +++ b/demo/src/main/resources/META-INF/native-image/proxy-config.json @@ -0,0 +1,5 @@ +[ + { + "interfaces":["sun.misc.SignalHandler"]} + +] diff --git a/demo/src/main/resources/META-INF/native-image/reflect-config.json b/demo/src/main/resources/META-INF/native-image/reflect-config.json new file mode 100644 index 000000000..87d83abe2 --- /dev/null +++ b/demo/src/main/resources/META-INF/native-image/reflect-config.json @@ -0,0 +1,202 @@ +[ +{ + "name":"com.github.benmanes.caffeine.cache.BBHeader$ReadAndWriteCounterRef", + "fields":[{"name":"writeCounter"}] +}, +{ + "name":"com.github.benmanes.caffeine.cache.BBHeader$ReadCounterRef", + "fields":[{"name":"readCounter"}] +}, +{ + "name":"com.github.benmanes.caffeine.cache.BLCHeader$DrainStatusRef", + "fields":[{"name":"drainStatus"}] +}, +{ + "name":"com.github.benmanes.caffeine.cache.BaseMpscLinkedArrayQueueColdProducerFields", + "fields":[{"name":"producerLimit"}] +}, +{ + "name":"com.github.benmanes.caffeine.cache.BaseMpscLinkedArrayQueueConsumerFields", + "fields":[{"name":"consumerIndex"}] +}, +{ + "name":"com.github.benmanes.caffeine.cache.BaseMpscLinkedArrayQueueProducerFields", + "fields":[{"name":"producerIndex"}] +}, +{ + "name":"com.github.benmanes.caffeine.cache.BoundedLocalCache", + "fields":[{"name":"refreshes"}] +}, +{ + "name":"com.github.benmanes.caffeine.cache.FS", + "fields":[ + {"name":"key"}, + {"name":"value"} + ], + "methods":[{"name":"","parameterTypes":[] }] +}, +{ + "name":"com.github.benmanes.caffeine.cache.FW", + "fields":[{"name":"value"}], + "methods":[{"name":"","parameterTypes":[] }] +}, +{ + "name":"com.github.benmanes.caffeine.cache.PS", + "fields":[ + {"name":"key"}, + {"name":"value"} + ] +}, +{ + "name":"com.github.benmanes.caffeine.cache.PSW", + "fields":[{"name":"writeTime"}], + "methods":[{"name":"","parameterTypes":[] }] +}, +{ + "name":"com.github.benmanes.caffeine.cache.PW", + "fields":[{"name":"value"}] +}, +{ + "name":"com.github.benmanes.caffeine.cache.PWW", + "fields":[{"name":"writeTime"}], + "methods":[{"name":"","parameterTypes":[] }] +}, +{ + "name":"com.github.benmanes.caffeine.cache.SIW", + "methods":[{"name":"","parameterTypes":["com.github.benmanes.caffeine.cache.Caffeine","com.github.benmanes.caffeine.cache.CacheLoader","boolean"] }] +}, +{ + "name":"com.github.benmanes.caffeine.cache.SSW", + "methods":[{"name":"","parameterTypes":["com.github.benmanes.caffeine.cache.Caffeine","com.github.benmanes.caffeine.cache.CacheLoader","boolean"] }] +}, +{ + "name":"com.github.benmanes.caffeine.cache.StripedBuffer", + "fields":[{"name":"tableBusy"}] +}, +{ + "name":"com.github.benmanes.caffeine.cache.WI", + "methods":[{"name":"","parameterTypes":["com.github.benmanes.caffeine.cache.Caffeine","com.github.benmanes.caffeine.cache.CacheLoader","boolean"] }] +}, +{ + "name":"com.github.benmanes.caffeine.cache.WS", + "methods":[{"name":"","parameterTypes":["com.github.benmanes.caffeine.cache.Caffeine","com.github.benmanes.caffeine.cache.CacheLoader","boolean"] }] +}, +{ + "name":"java.lang.ProcessHandle", + "methods":[{"name":"current","parameterTypes":[] }] +}, +{ + "name":"java.security.SecureRandomParameters" +}, +{ + "name":"java.sql.Date" +}, +{ + "name":"kotlin.jvm.internal.DefaultConstructorMarker" +}, +{ + "name":"kotlin.reflect.jvm.internal.ReflectionFactoryImpl", + "methods":[{"name":"","parameterTypes":[] }] +}, +{ + "name":"net.minestom.server.event.EventNodeImpl$Handle", + "fields":[{"name":"updated"}] +}, +{ + "name":"net.minestom.server.network.packet.server.CachedPacket", + "fields":[{"name":"packet"}] +}, +{ + "name":"net.minestom.server.network.packet.server.LazyPacket", + "fields":[{"name":"packet"}] +}, +{ + "name":"net.minestom.server.thread.AcquirableImpl", + "fields":[{"name":"assignedThread"}] +}, +{ + "name":"org.jctools.queues.BaseMpscLinkedArrayQueueColdProducerFields", + "fields":[{"name":"producerLimit"}] +}, +{ + "name":"org.jctools.queues.BaseMpscLinkedArrayQueueConsumerFields", + "fields":[{"name":"consumerIndex"}] +}, +{ + "name":"org.jctools.queues.BaseMpscLinkedArrayQueueProducerFields", + "fields":[{"name":"producerIndex"}] +}, +{ + "name":"org.jctools.queues.MpUnboundedXaddArrayQueueConsumerFields", + "fields":[ + {"name":"consumerChunk"}, + {"name":"consumerIndex"} + ] +}, +{ + "name":"org.jctools.queues.MpUnboundedXaddArrayQueueProducerChunk", + "fields":[ + {"name":"producerChunk"}, + {"name":"producerChunkIndex"} + ] +}, +{ + "name":"org.jctools.queues.MpUnboundedXaddArrayQueueProducerFields", + "fields":[{"name":"producerIndex"}] +}, +{ + "name":"org.jctools.queues.MpUnboundedXaddChunk", + "fields":[ + {"name":"index"}, + {"name":"next"}, + {"name":"prev"} + ] +}, +{ + "name":"org.jctools.queues.SpscArrayQueueConsumerIndexField", + "fields":[{"name":"consumerIndex"}] +}, +{ + "name":"org.jctools.queues.SpscArrayQueueProducerIndexFields", + "fields":[{"name":"producerIndex"}] +}, +{ + "name":"org.tinylog.configuration.PropertiesConfigurationLoader", + "methods":[{"name":"","parameterTypes":[] }] +}, +{ + "name":"org.tinylog.core.TinylogLoggingProvider", + "methods":[{"name":"","parameterTypes":[] }] +}, +{ + "name":"org.tinylog.writers.ConsoleWriter", + "methods":[{"name":"","parameterTypes":["java.util.Map"] }] +}, +{ + "name":"sun.misc.Signal", + "methods":[ + {"name":"","parameterTypes":["java.lang.String"] }, + {"name":"handle","parameterTypes":["sun.misc.Signal","sun.misc.SignalHandler"] } + ] +}, +{ + "name":"sun.misc.SignalHandler", + "fields":[{"name":"SIG_DFL"}] +}, +{ + "name":"sun.misc.Unsafe", + "fields":[{"name":"theUnsafe"}], + "queriedMethods":[ + {"name":"getAndAddLong","parameterTypes":["java.lang.Object","long","long"] }, + {"name":"getAndSetObject","parameterTypes":["java.lang.Object","long","java.lang.Object"] } + ] +}, +{ + "name":"sun.security.provider.NativePRNG", + "methods":[{"name":"","parameterTypes":[] }] +}, +{ + "name":"sun.security.provider.SHA", + "methods":[{"name":"","parameterTypes":[] }] +} +] diff --git a/demo/src/main/resources/META-INF/native-image/resource-config.json b/demo/src/main/resources/META-INF/native-image/resource-config.json new file mode 100644 index 000000000..f9258a4cb --- /dev/null +++ b/demo/src/main/resources/META-INF/native-image/resource-config.json @@ -0,0 +1,72 @@ +{ + "resources":{ + "includes":[ + { + "pattern":"\\QMETA-INF/services/net.kyori.adventure.text.serializer.gson.GsonComponentSerializer$Provider\\E" + }, + { + "pattern":"\\QMETA-INF/services/net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer$Provider\\E" + }, + { + "pattern":"\\QMETA-INF/services/net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer$Provider\\E" + }, + { + "pattern":"\\QMETA-INF/services/org.jline.terminal.spi.JansiSupport\\E" + }, + { + "pattern":"\\QMETA-INF/services/org.jline.terminal.spi.JnaSupport\\E" + }, + { + "pattern":"\\QMETA-INF/services/org.slf4j.spi.SLF4JServiceProvider\\E" + }, + { + "pattern":"\\QMETA-INF/services/org.tinylog.configuration.ConfigurationLoader\\E" + }, + { + "pattern":"\\QMETA-INF/services/org.tinylog.provider.LoggingProvider\\E" + }, + { + "pattern":"\\QMETA-INF/services/org.tinylog.writers.Writer\\E" + }, + { + "pattern":"\\Qblocks.json\\E" + }, + { + "pattern":"\\Qentities.json\\E" + }, + { + "pattern":"\\Qitems.json\\E" + }, + { + "pattern":"\\Qorg/fusesource/jansi/internal/native/Linux/x86_64/libjansi.so\\E" + }, + { + "pattern":"\\Qorg/fusesource/jansi/jansi.properties\\E" + }, + { + "pattern":"\\Qorg/jline/utils/capabilities.txt\\E" + }, + { + "pattern":"\\Qorg/jline/utils/xterm-256color.caps\\E" + }, + { + "pattern":"\\Qtags/block_tags.json\\E" + }, + { + "pattern":"\\Qtags/entity_type_tags.json\\E" + }, + { + "pattern":"\\Qtags/fluid_tags.json\\E" + }, + { + "pattern":"\\Qtags/gameplay_tags.json\\E" + }, + { + "pattern":"\\Qtags/item_tags.json\\E" + }, + { + "pattern":"\\Qtinylog.properties\\E" + } + ]}, + "bundles":[] +} diff --git a/demo/src/main/resources/META-INF/native-image/serialization-config.json b/demo/src/main/resources/META-INF/native-image/serialization-config.json new file mode 100644 index 000000000..0d4f101c7 --- /dev/null +++ b/demo/src/main/resources/META-INF/native-image/serialization-config.json @@ -0,0 +1,2 @@ +[ +]