[ 
https://issues.apache.org/jira/browse/NIFI-5176?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16906686#comment-16906686
 ] 

ASF subversion and git services commented on NIFI-5176:
-------------------------------------------------------

Commit 33187f8058b0f0a5808059795c5982dac24e5300 in nifi's branch 
refs/heads/master from Jeff Storck
[ https://gitbox.apache.org/repos/asf?p=nifi.git;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 TestPutIgniteCache.java 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 11
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 jdk.tools 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: https://issues.apache.org/jira/browse/NIFI-5176
>             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 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.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 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.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 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.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
(v7.6.14#76016)

Reply via email to