Thomas Heigl
Thomas Heigl
Your specific case can be solved by using a custom [RegexSerializer](https://github.com/magro/kryo-serializers/blob/master/src/main/java/de/javakaffee/kryoserializers/RegexSerializer.java) that doesn't rely on reflection. Alternatively, you can add JVM arguments for opening up the modules in question. See...
I cannot reproduce your first issue. I just downloaded and ran my tests on Corretto to make sure it isn't a JVM specific problem.
> Now I'm wondering if this is expected behaviour or a failure with java 17. This is expected behavior and has no effect unless you want to use UnsafeByteBuffers for...
Kryo is currently missing built-in, safe serializers for the following JDK classes: - `java.net.URI` - `java.util.UUID` - `java.util.regex.Pattern` - `java.util.concurrent.atomic.AtomicBoolean` - `java.util.concurrent.atomic.AtomicInteger` - `java.util.concurrent.atomic.AtomicLong` - `java.util.concurrent.atomic.AtomicReference` These serializers are trivial...
@jdorleans: On JDK 17, you currently need to open up `sun.nio.ch` like this: --add-opens=java.base/sun.nio.ch=ALL-UNNAMED Otherwise initialization of `UnsafeUtil` fails because it cannot run `DirectBuffer.class.getMethod("cleaner")`. We should allow usage of unsafe...
@graves501: You can either set `registrationRequired(false)` or manually register the classes using one of the following: ```java kryo.register(List.of(1).getClass()); kryo.register(List.of(1,2,3).getClass()); ``` ```java kryo.register(Class.forName("java.util.ImmutableCollections$List12")); kryo.register(Class.forName("java.util.ImmutableCollections$ListN")); ```
@KolorYan: Thanks for the report. Please improve the [formatting](https://guides.github.com/features/mastering-markdown/#GitHub-flavored-markdown) of your ticket. It is difficult to see what's going on at the moment.
@KolorYan: I can reproduce the issue. This does indeed look like a bug. Your fix works without breaking any tests, but I'm not sure if it causes any unintended side-effects....
@esalsbury: Does this work when you enable `extendedFieldNames` for `CompatibleFieldSerializerConfig`?
@magro: This makes sense if the detection doesn't add too much overhead. I'll look into this when I have some spare time.