From a40c4d2bde30f6e01c1652780477cce8d46c3122 Mon Sep 17 00:00:00 2001 From: Hubert Plociniczak Date: Wed, 22 Jan 2025 21:56:18 +0100 Subject: [PATCH] Make sure `awt` is included in NI resource configs Apparently `poi` requires `java.awt` and it was segfaulting in a mysterious way when it was missing. --- .../org/enso/table/jni-config.json | 29 +++++++++++++++++++ .../org/enso/table/resource-config.json | 8 ++++- 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 std-bits/table/src/main/resources/META-INF/native-image/org/enso/table/jni-config.json diff --git a/std-bits/table/src/main/resources/META-INF/native-image/org/enso/table/jni-config.json b/std-bits/table/src/main/resources/META-INF/native-image/org/enso/table/jni-config.json new file mode 100644 index 000000000000..d273bfc13827 --- /dev/null +++ b/std-bits/table/src/main/resources/META-INF/native-image/org/enso/table/jni-config.json @@ -0,0 +1,29 @@ +[ + { + "name":"java.awt.Color", + "fields":[{"name":"value"}] + }, + { + "name":"java.awt.GraphicsEnvironment", + "methods":[{"name":"isHeadless","parameterTypes":[] }] + }, + { + "name":"java.lang.Boolean", + "methods":[{"name":"getBoolean","parameterTypes":["java.lang.String"] }] + }, + { + "name":"java.lang.Class", + "methods":[{"name":"getClassLoader","parameterTypes":[] }] + }, + { + "name":"java.lang.ClassLoader", + "methods":[{"name":"loadClass","parameterTypes":["java.lang.String"] }] + }, + { + "name":"java.lang.System", + "methods":[{"name":"load","parameterTypes":["java.lang.String"] }] + }, + { + "name":"jdk.internal.loader.ClassLoaders$AppClassLoader" + } +] diff --git a/std-bits/table/src/main/resources/META-INF/native-image/org/enso/table/resource-config.json b/std-bits/table/src/main/resources/META-INF/native-image/org/enso/table/resource-config.json index 617c6b81eae4..709b7601f8ad 100644 --- a/std-bits/table/src/main/resources/META-INF/native-image/org/enso/table/resource-config.json +++ b/std-bits/table/src/main/resources/META-INF/native-image/org/enso/table/resource-config.json @@ -5,11 +5,14 @@ { "pattern": "org/apache/poi/schemas/ooxml/system/ooxml/.*\\.xsb$" }, + { + "pattern": "org/apache/poi/schemas/ooxml/element/.*\\.xsb$" + }, { "pattern": "org/apache/xmlbeans/metadata/.*\\.xsb$" }, { - "pattern": "org/apache/xmlbeans/impl/.*$" + "pattern": "org/apache/xmlbeans/metadata/.*\\.xsd$" }, { "pattern":"\\QMETA-INF/log4j-provider.properties\\E" @@ -86,5 +89,8 @@ }, { "name":"org.apache.xmlbeans.impl.regex.message", "locales":[""] + }, { + "name":"sun.awt.resources.awt", + "classNames":["sun.awt.resources.awt"] }] }