[
https://issues.apache.org/jira/browse/NIFI-5176?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jeff Storck updated NIFI-5176:
------------------------------
Description:
While retaining a source/target comptability of 1.8, NiFi needs to be buildable
on Java 11.
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.7.0, groovy-eclipse-compiler:2.9.3-01, and
groovy-eclipse-batch:2.4.15-01|
|Antler3 issue with ambiguous method calls|Explicit cast to ValidationContext
needed in TestHL7Query.java|
|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.4.15-01 and grooy-all:2.4.15|
|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 jdk.tools:jdk.tools|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.0-beta.5 and
mockito:2.19|
|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)|
was:
While retaining a source/target comptability of 1.8, NiFi needs to be buildable
on Java 9.
The following issues have been encountered while attempting to run a Java
1.8-built NiFi on Java 9:
||Issue||Solution||
|groovy-eclipse-compiler not working with Java 10|-Switched to gmaven-plus-
Updated to maven-compiler-plugin:3.7.0, groovy-eclipse-compiler:2.9.3-01, and
groovy-eclipse-batch:2.4.15-01|
|Antler3 issue with ambiguous method calls|Explicit cast to ValidationContext
needed in TestHL7Query.java|
|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.4.15-01 and grooy-all:2.4.15|
|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 jdk.tools:jdk.tools|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.0-beta.5 and
mockito:2.19|
|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)|
> NiFi needs to be buildable on Java 11
> -------------------------------------
>
> Key: NIFI-5176
> URL: https://issues.apache.org/jira/browse/NIFI-5176
> Project: Apache NiFi
> Issue Type: Sub-task
> Reporter: Jeff Storck
> Assignee: Jeff Storck
> Priority: Major
>
> While retaining a source/target comptability of 1.8, NiFi needs to be
> buildable on Java 11.
> 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.7.0, groovy-eclipse-compiler:2.9.3-01, and
> groovy-eclipse-batch:2.4.15-01|
> |Antler3 issue with ambiguous method calls|Explicit cast to ValidationContext
> needed in TestHL7Query.java|
> |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.4.15-01 and grooy-all:2.4.15|
> |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 jdk.tools:jdk.tools|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.0-beta.5
> and mockito:2.19|
> |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
(v7.6.3#76005)