diff --git a/google-cloud-storage/src/main/resources/META-INF/native-image/com/google/cloud/storage/proxy-config.json b/google-cloud-storage/src/main/resources/META-INF/native-image/com/google/cloud/storage/proxy-config.json new file mode 100644 index 000000000..3fe6f8471 --- /dev/null +++ b/google-cloud-storage/src/main/resources/META-INF/native-image/com/google/cloud/storage/proxy-config.json @@ -0,0 +1,5 @@ +[ + { + "interfaces":["com.google.cloud.storage.spi.v1.StorageRpc"] + } +] diff --git a/google-cloud-storage/src/main/resources/META-INF/native-image/com/google/cloud/storage/reflect-config.json b/google-cloud-storage/src/main/resources/META-INF/native-image/com/google/cloud/storage/reflect-config.json new file mode 100644 index 000000000..68a198fc7 --- /dev/null +++ b/google-cloud-storage/src/main/resources/META-INF/native-image/com/google/cloud/storage/reflect-config.json @@ -0,0 +1,4 @@ +[{ + "name":"com.google.cloud.storage.BlobInfo$ImmutableEmptyMap", + "methods":[{"name":"","parameterTypes":[] }]} +] \ No newline at end of file diff --git a/google-cloud-storage/src/test/resources/META-INF/native-image/com/google/cloud/storage/native-image.properties b/google-cloud-storage/src/test/resources/META-INF/native-image/com/google/cloud/storage/native-image.properties new file mode 100644 index 000000000..9f5d52d81 --- /dev/null +++ b/google-cloud-storage/src/test/resources/META-INF/native-image/com/google/cloud/storage/native-image.properties @@ -0,0 +1,32 @@ +# The JUnitFeature which is brought in by Graal explicitly initializes +# Parameterized at image build time. This causes ParallelParameterized and +# subsequently com.google.cloud.storage.conformance.retry.ITRetryConformanceTest +# and other classes ITRetryConformanceTest references to also be initialized at +# build time. Initializing these classes explicitly at build time results in a +# successful build. +Args = \ + --initialize-at-build-time=com.google.cloud.conformance.storage.v1,\ + com.google.protobuf,\ + com.google.auth.oauth2,\ + com.google.cloud.storage.conformance.retry,\ + com.google.common.base.Charsets,\ + com.google.gson.stream.JsonReader,\ + com.google.api.client.util,\ + com.google.api.client.http.javanet.NetHttpTransport,\ + com.google.api.client.http.HttpTransport,\ + com.google.api.client.json,\ + com.google.common.io.BaseEncoding,\ + com.google.common.math.IntMath$1,\ + com.google.common.collect.Platform,\ + com.google.gson.Gson,\ + com.google.common.truth,\ + com.google.common.collect,\ + com.google.gson.internal.reflect,\ + com.google.gson.internal.bind,\ + com.google.gson.internal,\ + com.google.gson.internal.sql.SqlTypesSupport,\ + com.google.gson.FieldNamingPolicy$3,\ + com.google.gson.LongSerializationPolicy$2 + + + diff --git a/google-cloud-storage/src/test/resources/META-INF/native-image/com/google/cloud/storage/reflect-config.json b/google-cloud-storage/src/test/resources/META-INF/native-image/com/google/cloud/storage/reflect-config.json new file mode 100644 index 000000000..06d0837d7 --- /dev/null +++ b/google-cloud-storage/src/test/resources/META-INF/native-image/com/google/cloud/storage/reflect-config.json @@ -0,0 +1,22 @@ +[ + { + "name":"org.apache.commons.logging.LogFactory", + "allDeclaredFields":true, + "allDeclaredMethods":true, + "allDeclaredConstructors": true + }, + { + "name":"org.apache.commons.logging.impl.Jdk14Logger", + "methods":[{"name":"","parameterTypes":["java.lang.String"] }]} +, + { + "name":"org.apache.commons.logging.impl.LogFactoryImpl", + "allDeclaredFields":true, + "allDeclaredMethods":true, + "methods":[{"name":"","parameterTypes":[] }]} +, +{ + "name":"com.google.cloud.storage.conformance.retry.TestBench$RetryTestResource", + "allDeclaredFields":true, + "methods":[{"name":"","parameterTypes":[] }]} +] diff --git a/google-cloud-storage/src/test/resources/META-INF/native-image/com/google/cloud/storage/resource-config.json b/google-cloud-storage/src/test/resources/META-INF/native-image/com/google/cloud/storage/resource-config.json new file mode 100644 index 000000000..6f7c6de56 --- /dev/null +++ b/google-cloud-storage/src/test/resources/META-INF/native-image/com/google/cloud/storage/resource-config.json @@ -0,0 +1,7 @@ +{ + "resources":{ + "includes":[ + {"pattern": ".*.txt"} + ] + } +} \ No newline at end of file