Closed MorinRemi closed 5 years ago
I posted an update to https://github.com/googleapis/google-http-java-client/issues/367 which would remove the need for this hack entirely.
We can fix this but we need a release of google-http-java-client first.
http-java-client released, proceeding
How to fix this? I am using below dependency for datastore
org.springframework.cloud:spring-cloud-gcp-starter-data-datastore:1.1.2.RELEASE
Make sure you're using the latest version of the datastore and http clients. libraries-bom 5.6.0 should give you this.
com.google.datastore.v1.client.RemoteRpc does an Illegal reflective access when running on Java 11 (and probably any above java 1.8) resulting in error being sent right to system error.
The offensive line is https://github.com/GoogleCloudPlatform/google-cloud-datastore/blob/a23940d0634d7f537faf01ad9e60598046bcb40a/java/datastore/src/main/java/com/google/datastore/v1/client/RemoteRpc.java#L72
You can read more on the JVM modern behaviour here: http://openjdk.java.net/jeps/261#Relaxed-strong-encapsulation
Full error: WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.google.datastore.v1.client.RemoteRpc$GzipFixingInputStream (file:/Users/gen06958/.gradle/caches/modules-2/files-2.1/com.google.cloud.datastore/datastore-v1-proto-client/1.6.0/8b2516336fdf191d86d9979588b23cd502aa8f73/datastore-v1-proto-client-1.6.0.jar) to field java.io.FilterInputStream.in WARNING: Please consider reporting this to the maintainers of com.google.datastore.v1.client.RemoteRpc$GzipFixingInputStream WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release