diff --git a/driver/pom.xml b/driver/pom.xml
index 7bd9ca1a63..26f5adf909 100644
--- a/driver/pom.xml
+++ b/driver/pom.xml
@@ -10,7 +10,7 @@
..
- neo4j-java-driver
+ neo4j-java-driver${deploymentType}
jar
Neo4j Java Driver
@@ -22,6 +22,7 @@
org.neo4j.driver
${project.basedir}/..
false
+
@@ -82,7 +83,102 @@
+
+
+ slim
+
+
+ skipShade
+ true
+
+
+
+ -slim
+
+
+
+
+ shading
+
+
+ skipShade
+ !true
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+
+
+ package
+
+ shade
+
+
+
+
+ io.netty:*
+ io.projectreactor:*
+
+
+
+
+ io.netty
+ org.neo4j.driver.internal.shaded.io.netty
+
+
+ reactor
+ org.neo4j.driver.internal.shaded.reactor
+
+
+
+
+
+ src/main/resources/shaded/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
+ META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
+
+
+ src/main/resources/shaded/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
+ META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
+
+
+
+
+ io.netty:*
+
+ META-INF/native-image/**
+
+
+
+
+ org.neo4j.driver:neo4j-java-driver
+
+ META-INF/native-image/**
+
+
+
+ true
+ true
+
+
+
+
+
+
+
+
+
+
+
+ src/main/resources
+
+ shaded/**/*
+
+
+
org.codehaus.mojo
@@ -215,49 +311,6 @@
${project.build.directory}/classes
-
- org.apache.maven.plugins
- maven-shade-plugin
-
-
- package
-
- shade
-
-
-
-
- io.netty:*
- io.projectreactor:*
-
-
-
-
- io.netty
- org.neo4j.driver.internal.shaded.io.netty
-
-
- reactor
- org.neo4j.driver.internal.shaded.reactor
-
-
-
-
-
-
-
- io.netty:*
-
- META-INF/native-image/**
-
-
-
- true
- true
-
-
-
-
diff --git a/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties b/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
index c2b3de8823..9d2171e945 100644
--- a/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
+++ b/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
@@ -2,19 +2,19 @@ Args = -H:ReflectionConfigurationResources=${.}/reflection-config.json \
--initialize-at-run-time=org.neo4j.driver.internal.async.connection.BoltProtocolUtil \
--initialize-at-run-time=org.neo4j.driver.internal.async.connection.ChannelAttributes \
--initialize-at-run-time=org.neo4j.driver.internal.async.connection.ChannelConnectedListener \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.AbstractReferenceCountedByteBuf \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufAllocator \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufUtil \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufUtil$HexUtil \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.PooledByteBufAllocator \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.UnpooledHeapByteBuf \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.UnreleasableByteBuf \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.Conscrypt \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.ConscryptAlpnSslEngine \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslEngine \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.util.ThreadLocalInsecureRandom \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.util.AbstractReferenceCounted \
- --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.util.internal.logging.Log4JLogger \
+ --initialize-at-run-time=io.netty.buffer.AbstractReferenceCountedByteBuf \
+ --initialize-at-run-time=io.netty.buffer.ByteBufAllocator \
+ --initialize-at-run-time=io.netty.buffer.ByteBufUtil \
+ --initialize-at-run-time=io.netty.buffer.ByteBufUtil$HexUtil \
+ --initialize-at-run-time=io.netty.buffer.PooledByteBufAllocator \
+ --initialize-at-run-time=io.netty.buffer.UnpooledHeapByteBuf \
+ --initialize-at-run-time=io.netty.buffer.UnreleasableByteBuf \
+ --initialize-at-run-time=io.netty.handler.ssl.Conscrypt \
+ --initialize-at-run-time=io.netty.handler.ssl.ConscryptAlpnSslEngine \
+ --initialize-at-run-time=io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator \
+ --initialize-at-run-time=io.netty.handler.ssl.ReferenceCountedOpenSslEngine \
+ --initialize-at-run-time=io.netty.handler.ssl.util.ThreadLocalInsecureRandom \
+ --initialize-at-run-time=io.netty.util.AbstractReferenceCounted \
+ --initialize-at-run-time=io.netty.util.internal.logging.Log4JLogger \
-Dio.netty.noUnsafe=true \
-Dio.netty.leakDetection.level=DISABLED
diff --git a/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json b/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
index 68572f10fb..97033e8c9e 100644
--- a/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
+++ b/driver/src/main/resources/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
@@ -1,56 +1,56 @@
[
{
- "name": "org.neo4j.driver.internal.shaded.io.netty.channel.socket.nio.NioSocketChannel",
+ "name": "io.netty.channel.socket.nio.NioSocketChannel",
"methods": [
{ "name": "", "parameterTypes": [] }
]
},
{
- "name": "org.neo4j.driver.internal.shaded.io.netty.channel.socket.nio.NioServerSocketChannel",
+ "name": "io.netty.channel.socket.nio.NioServerSocketChannel",
"methods": [
{ "name": "", "parameterTypes": [] }
]
},
{
- "name" : "org.neo4j.driver.internal.shaded.io.netty.buffer.AbstractByteBufAllocator",
+ "name" : "io.netty.buffer.AbstractByteBufAllocator",
"allDeclaredMethods" : true
},
{
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.ReferenceCountUtil",
+ "name" : "io.netty.util.ReferenceCountUtil",
"allDeclaredMethods" : true
},
{
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerIndexField",
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerIndexField",
"fields": [
{"name": "producerIndex", "allowUnsafeAccess": true}
]
},
{
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerLimitField",
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerLimitField",
"fields": [
{"name": "producerLimit", "allowUnsafeAccess": true}
]
},
{
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueConsumerIndexField",
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueConsumerIndexField",
"fields": [
{"name": "consumerIndex", "allowUnsafeAccess": true}
]
},
{
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueProducerFields",
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueProducerFields",
"fields": [
{"name": "producerIndex", "allowUnsafeAccess": true}
]
},
{
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueColdProducerFields",
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueColdProducerFields",
"fields": [
{"name": "producerLimit", "allowUnsafeAccess": true}
]
},
{
- "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueConsumerFields",
+ "name" : "io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueConsumerFields",
"fields": [
{"name": "consumerIndex", "allowUnsafeAccess": true}
]
diff --git a/driver/src/main/resources/shaded/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties b/driver/src/main/resources/shaded/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
new file mode 100644
index 0000000000..c2b3de8823
--- /dev/null
+++ b/driver/src/main/resources/shaded/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/native-image.properties
@@ -0,0 +1,20 @@
+Args = -H:ReflectionConfigurationResources=${.}/reflection-config.json \
+ --initialize-at-run-time=org.neo4j.driver.internal.async.connection.BoltProtocolUtil \
+ --initialize-at-run-time=org.neo4j.driver.internal.async.connection.ChannelAttributes \
+ --initialize-at-run-time=org.neo4j.driver.internal.async.connection.ChannelConnectedListener \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.AbstractReferenceCountedByteBuf \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufAllocator \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufUtil \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.ByteBufUtil$HexUtil \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.PooledByteBufAllocator \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.UnpooledHeapByteBuf \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.buffer.UnreleasableByteBuf \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.Conscrypt \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.ConscryptAlpnSslEngine \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.ReferenceCountedOpenSslEngine \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.handler.ssl.util.ThreadLocalInsecureRandom \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.util.AbstractReferenceCounted \
+ --initialize-at-run-time=org.neo4j.driver.internal.shaded.io.netty.util.internal.logging.Log4JLogger \
+ -Dio.netty.noUnsafe=true \
+ -Dio.netty.leakDetection.level=DISABLED
diff --git a/driver/src/main/resources/shaded/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json b/driver/src/main/resources/shaded/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
new file mode 100644
index 0000000000..68572f10fb
--- /dev/null
+++ b/driver/src/main/resources/shaded/META-INF/native-image/org.neo4j.driver/neo4j-java-driver/reflection-config.json
@@ -0,0 +1,58 @@
+[
+ {
+ "name": "org.neo4j.driver.internal.shaded.io.netty.channel.socket.nio.NioSocketChannel",
+ "methods": [
+ { "name": "", "parameterTypes": [] }
+ ]
+ },
+ {
+ "name": "org.neo4j.driver.internal.shaded.io.netty.channel.socket.nio.NioServerSocketChannel",
+ "methods": [
+ { "name": "", "parameterTypes": [] }
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.buffer.AbstractByteBufAllocator",
+ "allDeclaredMethods" : true
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.ReferenceCountUtil",
+ "allDeclaredMethods" : true
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerIndexField",
+ "fields": [
+ {"name": "producerIndex", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueProducerLimitField",
+ "fields": [
+ {"name": "producerLimit", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.MpscArrayQueueConsumerIndexField",
+ "fields": [
+ {"name": "consumerIndex", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueProducerFields",
+ "fields": [
+ {"name": "producerIndex", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueColdProducerFields",
+ "fields": [
+ {"name": "producerLimit", "allowUnsafeAccess": true}
+ ]
+ },
+ {
+ "name" : "org.neo4j.driver.internal.shaded.io.netty.util.internal.shaded.org.jctools.queues.BaseMpscLinkedArrayQueueConsumerFields",
+ "fields": [
+ {"name": "consumerIndex", "allowUnsafeAccess": true}
+ ]
+ }
+]