Github user jasobrown commented on a diff in the pull request: https://github.com/apache/cassandra/pull/236#discussion_r199266510 --- Diff: src/java/org/apache/cassandra/cql3/functions/JavaBasedUDFunction.java --- @@ -591,14 +612,48 @@ private NameEnvironmentAnswer findType(String className) String resourceName = className.replace('.', '/') + ".class"; - try (InputStream is = UDFunction.udfClassLoader.getResourceAsStream(resourceName)) + // up to Java 8: + // returns a non-null InputStream for class files + // since Java 11: + // returns a non-null InputStream for class files for application classes + // returns null for class files for system modules (e.g. java.base) + try { - if (is != null) + InputStream is = UDFunction.udfClassLoader.getResourceAsStream(resourceName); + try + { + if (is == null) + { + // For Java 11 try to see whether the class actually exists and read the + // class file data via the class' module. (This is necessary at least + // for 9-ea build 123) --- End diff -- Is this still true as of java11 (ea 19)?
--- --------------------------------------------------------------------- To unsubscribe, e-mail: pr-unsubscr...@cassandra.apache.org For additional commands, e-mail: pr-h...@cassandra.apache.org