The CLJS compiled uses deprecated modules on Java 9

Description

Running the shipping REPL fails with Java 9:

For Quick Start, the very first build command under "Let's build some ClojureScript" fails:

The javax.xml.bind package was deprecated in Java 9 and moved to a module, which requires adding --add-modules java.xml.bind to your REPL command line. It would be great if clojurescript didn't depend on the deprecated javax.xml.bind package in the first place.

Environment

OSX Java 9

Attachments

4

Activity

Show:

Mike Fikes December 1, 2017 at 9:22 PM

Confirmed fixed with downstream project and Java 9.

Mike Fikes November 17, 2017 at 9:44 PM

Attached a CLJS-2377-3.patch that further brings the perf of bytes-to-hex-str to less than a factor of 2 of DatatypeConverter/printHexBinary.

Mike Fikes November 17, 2017 at 3:22 PM

I'm a bit concerned about the perf of bytes-to-hex-str in the previous CLJS-2377.patch because it is about 200 times slower than DatatypeConverter/printHexBinary and it can used by content-sha on fairly large strings (source files, for example). Attaching a revision CLJS-2377-2.patch which falls within a factor of 5 of DatatypeConverter/printHexBinary.

Mike Fikes November 15, 2017 at 3:56 PM

Attached a patch (CLJS-2377.patch) which addresses an issue (extra argument) in previous patch, adds tests, and covers both places where the DatatypeConverter code was being used.

Completed

Details

Assignee

Reporter

Approval

Accepted

Patch

Code and Test

Priority

Created October 4, 2017 at 3:10 AM
Updated December 1, 2017 at 9:22 PM
Resolved December 1, 2017 at 9:22 PM