I don’t run the build with Java 11, although I do have projects that use it that are on Java 11. It seems that log4j-api is failing when compiling with Java 11 because sun.reflect.Reflection was removed in Java 9. I guess we need to modify the toolchains configuration to tell the main modules to use only Java 8 to compile. The only other option would be to create a jar that has that class in it and specify it as a provided dependency.
Ralph > On Jun 26, 2019, at 7:32 AM, Gary Gregory <[email protected]> wrote: > > Driving me nuts: I can do the following OK on Java 8: " mvn -P rat > -DskipTests clean install". > But then I switch to Java 11 and run "mvn test" and Maven wants to > recompile everything and fails as noted below. > How do you test on Java 11? > > Gary > > On Wed, Jun 26, 2019 at 10:24 AM Gary Gregory <[email protected]> > wrote: > >> Note: Compiling on Java 11 fails: >> >> [INFO] --- maven-compiler-plugin:3.8.1:testCompile (default-testCompile) @ >> log4j-api --- >> [INFO] Changes detected - recompiling the module! >> [INFO] Compiling 84 source files to >> C:\temp\rc\logging-log4j2\log4j-api\target\test-classes >> [INFO] ------------------------------------------------------------- >> [WARNING] COMPILATION WARNING : >> [INFO] ------------------------------------------------------------- >> [WARNING] [options] bootstrap class path not set in conjunction with >> -source 7 >> [WARNING] No processor claimed any of these annotations: >> org.junit.AfterClass,org.junit.Rule,org.junit.BeforeClass,org.junit.Ignore,org.junit.After,org.junit.runner.RunWith,org.junit.runners.Parameterized.Parameters,org.junit.Test,org.junit.ClassRule,org.junit.Before >> [INFO] 2 warnings >> [INFO] ------------------------------------------------------------- >> [INFO] ------------------------------------------------------------- >> [ERROR] COMPILATION ERROR : >> [INFO] ------------------------------------------------------------- >> [ERROR] >> C:\temp\rc\logging-log4j2\log4j-api\src\test\java\org\apache\logging\log4j\util\StackLocatorUtilTest.java:[25,18] >> error: cannot find symbol >> symbol: class Reflection >> location: package sun.reflect >> [INFO] 1 error >> [INFO] ------------------------------------------------------------- >> [INFO] >> ------------------------------------------------------------------------ >> [INFO] Reactor Summary for Apache Log4j 2 2.12.0: >> [INFO] >> [INFO] Apache Log4j 2 ..................................... SUCCESS [ >> 3.167 s] >> [INFO] Apache Log4j API Java 9 support .................... SUCCESS [ >> 6.356 s] >> [INFO] Apache Log4j API ................................... FAILURE [ >> 10.530 s] >> >> Gary >> >> >> On Tue, Jun 25, 2019 at 11:59 PM Ralph Goers <[email protected]> >> wrote: >> >>> This is a vote to release Log4j 2.12.0, the next version of the Log4j 2 >>> project. >>> >>> Please download, test, and cast your votes on the log4j developers list. >>> [] +1, release the artifacts >>> [] -1, don't release because... >>> >>> The vote will remain open for 72 hours (or more if required). All votes >>> are welcome and we encourage everyone to test the release, but only Logging >>> PMC votes are “officially” counted. As always, at least 3 +1 votes and more >>> positive than negative votes are required. >>> >>> Changes in this release include: >>> >>> New Features >>> >>> • LOG4J2-2403: Allow zero padding the counter of a >>> RollingFileAppender. Thanks to hupfdule. >>> • LOG4J2-2427: Add filter that will match events when no marker >>> is present. Thanks to Rimaljit Kaur. >>> • LOG4J2-2406: Add reconfiguration methods to Configurator. >>> • LOG4J2-913: Add support for reconfiguration via HTTP(S), >>> Docker, and Spring Cloud Configuration. >>> • LOG4J2-2586: TCP Appender should support a host name resolving >>> to multiple IP addresses. >>> • LOG4J2-2337: Allow custom end-of-line with JsonLayout. Thanks >>> to Arvind Sahare, Patrice Ferrot. >>> • LOG4J2-2598: GZIP compression on rollover supports configurable >>> compression levels. Thanks to Carter Kozak. >>> • LOG4J2-2611: AsyncQueueFullPolicy configuration short values >>> "Default" and "Discard" are case insensitive to avoid confusion. >>> • LOG4J2-2634: Add and use method >>> org.apache.logging.log4j.message.MapMessage.toKey(String) for simpler >>> subclasses. >>> Fixed Bugs >>> >>> • LOG4J2-2547: RollingRandomAccessFileAppender error message >>> referenced incorrect class name. >>> • LOG4J2-2616: Restore constructor to ThrowablePatternConverter >>> that was removed in 2.8.2. >>> • LOG4J2-2622: StructuredDataId was ignoring maxLength atribute. >>> • LOG4J2-2636: RFC5424Layout was not properly setting default >>> Structured Element id for the MDC >>> • LOG4J2-1143: Lookups were not found if the plugin key was not >>> lowercase. Thanks to Pascal Heinrich. >>> • LOG4J2-1852: Locate plugins within a Jar using a URL >>> Connection. Thanks to Tanner Altares. >>> • LOG4J2-2610: Explicitly set file creation time. >>> • LOG4J2-2561: JEP223 version detection fix for JDK 9 and up. >>> Thanks to Ulrich Enslin. >>> • LOG4J2-1103: FailoverAppender was failing with ERROR appender >>> Failover has no parameter that matches element Failovers. Thanks to Seán >>> Dunne. >>> • LOG4J2-2602: Update file time when size based triggering policy >>> is used without a time-based triggering policy. >>> • LOG4J2-2597: Throw better exception message when both >>> log4j-slf4j-impl and log4j-to-slf4j are present. >>> • LOG4J2-2559: NullPointerException in >>> JdbcAppender.createAppender(). Thanks to Li Lei, Gary Gregory. >>> • LOG4J2-2592: StackOverflowException when server not reachable >>> with SocketAppender. Thanks to Dávid Kaya, Gary Gregory. >>> • LOG4J2-2598: java.lang.StackOverflowError at >>> org.apache.logging.log4j.junit.AbstractExternalFileCleaner.println(AbstractExternalFileCleaner.java:169). >>> Thanks to Gary Gregory. >>> • LOG4J2-2564: MapPatternConverter is properly created from the >>> '%K', '%map', and '%MAP' patterns. PatternConverter instanceOf methods with >>> unknown parameter types no longer elide those with known parameters. >>> • LOG4J2-2612: NullPointerException at >>> org.apache.logging.log4j.core.appender.db.jdbc.JdbcDatabaseManager.writeInternal(JdbcDatabaseManager.java:803). >>> • LOG4J2-2618: Possible ClassCastException in >>> org.apache.logging.log4j.core.script.ScriptManager.ScriptManager(Configuration, >>> WatchManager) >>> • LOG4J2-2631: RoutingAppender PurgePolicy implementations no >>> longer stop appenders referenced from the logger configuration, only those >>> that have been created by the RoutingAppender. Note that >>> RoutingAppender.getAppenders no longer includes entries for referenced >>> appenders, only those which it has created. >>> • LOG4J2-2629: Fix a race allowing events not to be recorded when >>> a RoutingAppender purge policy attempts to delete an idle appender at >>> exactly the same time as a new event is recorded. >>> • LOG4J2-2606: Asynchronous logging when the queue is full no >>> longer results in heavy CPU utilization and low throughput. >>> Changes >>> >>> • : Update tests from H2 1.4.197 to 1.4.199. Thanks to Gary >>> Gregory. >>> • LOG4J2-2570: Update Jackson from 2.9.7 to 2.9.8. Thanks to Gary >>> Gregory. >>> • LOG4J2-2574: Update MongoDB 3 module driver from 3.9.0 to >>> 3.10.1. Thanks to Gary Gregory. >>> • LOG4J2-2619: Update Jackson from 2.9.8 to 2.9.9. >>> • LOG4J2-2634: Refactor several AsyncLogger methods below the 35 >>> byte threshold for inlining. >>> >>> Tag: >>> a) for a new copy do "git clone >>> https://github.com/apache/logging-log4j2.git" and then "git checkout >>> tags/log4j-2.12.0-rc2” >>> b) for an existing working copy to “git pull” and then “git checkout >>> tags/log4j-2.12.0-rc2” >>> >>> Web Site: http://rgoers.github.io/log4j2-site/index.html. >>> >>> Maven Artifacts: >>> https://repository.apache.org/content/repositories/orgapachelogging-1047 >>> >>> Distribution archives: >>> https://dist.apache.org/repos/dist/dev/logging/log4j/ >>> >>> You may download all the Maven artifacts by executing: >>> wget -e robots=off --cut-dirs=7 -nH -r -p -np --no-check-certificate >>> https://repository.apache.org/content/repositories/orgapachelogging-1047/org/apache/logging/log4j/ >>> >>> Ralph >>> >>
