nifi-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF subversion and git services (JIRA)" <>
Subject [jira] [Commented] (NIFI-5176) NiFi needs to be buildable on Java 11
Date Tue, 13 Aug 2019 22:45:00 GMT


ASF subversion and git services commented on NIFI-5176:

Commit 33187f8058b0f0a5808059795c5982dac24e5300 in nifi's branch refs/heads/master from Jeff
[;h=33187f8 ]

NIFI-5176 NiFI builds on Java 11
Added "jigsaw" profile to multiple modules, which auto-activates when building with Java 11
and adds several dependencies: jaxb, activation, and annotation-api.
Updated SslContextFactory to return tuple of socket factory with trust manager for issue with
okhttp api changes in java 9+
Updated TestGet/PostHTTPGroovy to use default SSL context to get default cipher suites
Updated StandardTemplateDAOSpec.groovy, was using a 37-character UUID, shortened to 36 characters.
Multiple tests updated to specifically use TLSv1.2, since two-way TLSv1.3 for some component
tests fail during the Java 11 build.  Needs more investigation.
Replaced GString with String concatenation for map key's value in ScriptedReportingTaskGroovyTest
to avoid runtime error of casting GString to String when retrieved from a map that is storing
the GString
Removed nifi-toolkit-api plugin configuration of maven-compiler-plugin, it is inherited
Resolved deprecation errors during Groovy compile for bouncycastle, Extension should be used
in place of X509Extension
Fixed JNAOverridingJUnitRunner's creation of the classpath for the custom classloader created
to be able to mock jna classes
Removed import of IOUtils (from the wrong package) from InferenceSchemaStrategy
Updated maven-compiler-plugin version to 3.8.1
TLS (default in Java 11 is TLSv1.3) working for Site-to-Site client tests after upgrading
JDK installation to JDK 11.0.3, httpclient5 5.0-beta4, and httpasyncclient 4.1.4
HttpNotificationService updated to find and use the first found X509TrustManager rather than
casting directly from the array of TrustManagers returned from SslContextFactory
  Removed unnecessary throws declaration from getSslSocketFactory method
Replaced DnsContextFactory.class.getName() with a string to avoid having to export/open the
jdk.naming.dns module
Updated TestGetIgniteCache and to skip tests on Java 11+ (via Assume),
and noted the check should be removed once a version of Ignite is released that supports Java
Updated SpringContextProcessor to create proper ClassLoader and uses URLClassloader.getResource()
instead of URLClassloader.findResource() in isConfigResolvable.
  Due to the application classloader no longer being a URLClassLoader in Java 9+, the URLClassLoader
created in isConfigResolvable no longer has explicit access to the parent's resources as URLs.
  URLClassLoader.getResource() searches the parent classloaders, and must be used instead
of URLClassLoader.findResource() which only searches the URLs in the URLClassLoader and does
not search the parent classloaders.

NIFI-5176 Moved exclusion of to the jigsaw profile in the POMs of nifi-hbase_1_1_2-client-service
and nifi-hbase_2-client-service

NIFI-5176 Updated site-to-site-client's POM to use properties to establish the correct httpclient
dependency for when building with Java 11

This closes #3404.

> NiFi needs to be buildable on Java 11
> -------------------------------------
>                 Key: NIFI-5176
>                 URL:
>             Project: Apache NiFi
>          Issue Type: Sub-task
>            Reporter: Jeff Storck
>            Assignee: Jeff Storck
>            Priority: Major
>          Time Spent: 7h 40m
>  Remaining Estimate: 0h
> While retaining a source/target comptability of 1.8, NiFi needs to be buildable on Java
> The following issues have been encountered while attempting to run a Java 1.8-built NiFi
on Java 11:
> ||Issue||Solution||
> |groovy-eclipse-compiler not working with Java 10|-Switched to gmaven-plus- Updated to
maven-compiler-plugin:3.8.1, groovy-eclipse-compiler:3.4.0-01, and groovy-eclipse-batch:2.5.4-01
(See NIFI-5254 for reference)|
> |Antler3 issue with ambiguous method calls|Explicit cast to ValidationContext needed
> |jaxb2-maven-plugin not compatible with Java 9|Switched to maven-jaxb-plugin|
> |-nifi-enrich-processors uses package com.sun.jndi.dns, which does not exist-|-Required
addition of- -add-modules=jdk.naming.dns --add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED,
which prevents the usage of compiling with the --release option (to compile only against public
APIs in the JDK) from being used. Not an optimal solution.-|
> |groovy-eclipse-batch:2.4.13-01 could not find JDK base classes|Updated to groovy-eclipse-batch:2.5.4-01
and groovy-all:2.5.4 (See NIFI-5254 for reference)|
> |maven-surefire-plugin:2.20.1 throws null pointer exceptions|Updated to maven-surefire-plugin:2.22.0|
> |okhttp client builder requires X509TrustManager on Java 9+|Added methods to return TrustManager
instances with the SSLContext created by SSLContextFactory and updated HttpNotificationService
to use the paired TrustManager|
> |nifi-runtime groovy tests aren't running|Added usage of build-helper-maven-plugin to
explicitly add src/test/groovy to force groovy compilation of test sources. groovy-eclipse-compiler
skips src/test/groovy if src/test/java doesn't exist, which is the case for nifi-runtime.
(See NIFI-5341 for reference)|
> |hbase-client depends on|Excluded this dependency {color:#f79232}*(needs
live testing)* {color}|
> |HBase client 1.1.2 does not allow running on Java 9+|Updated to HBase client 1.1.11,
passes unit tests (See HBASE-17944 for reference) *{color:#f79232}(needs live testing){color}*|
> |powermock:1.6.5 does not support Java 10|Updated to powermock:2.0.2 and mockito:2.28.2
(See NIFI-6360 for reference)|
> |com.yammer.metrics:metrics-core:2.2.0 does not support Java 10|Upgrading com.yammer.metrics:metrics-core:2.2.0
to io.dropwizard.metrics:metrics-jvm:4.0.0 (See NIFI-5373 for reference)|

This message was sent by Atlassian JIRA

View raw message