Roman Valls Guimera created BATIK-1260:
------------------------------------------

             Summary: Java11 module-info batik-script/batik-bridge 
compatibility issue
                 Key: BATIK-1260
                 URL: https://issues.apache.org/jira/browse/BATIK-1260
             Project: Batik
          Issue Type: Bug
          Components: Bridge, Scripting
    Affects Versions: 1.11
         Environment: openjdk 11.0.2 2019-01-15
OpenJDK Runtime Environment 18.9 (build 11.0.2+9)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.2+9, mixed mode)
            Reporter: Roman Valls Guimera


Hello Batik devs,

I'm refreshing a legacy genomics visualization application (IGV) towards Java11 
dependencies:

[https://github.com/igvteam/igv/pull/620]

I've found the following Java11+Batik hiccups.

When I use the following maven artifacts to fix a SVG issue in the application 
I'm working on:

[https://github.com/igvteam/igv/pull/620/commits/f30bc3699856afa68277595a2392c2f34392c165]

**Everything works in runtime** (as in _./gradlew run_ and then File->Save 
Image as SVG, generates a correct .svg).

But strangely, *when running the tests* (as in _./gradlew test_) I'm faced with 
this:

 
{code:java}
Error occurred during initialization of boot layer
java.lang.module.FindException: Unable to derive module descriptor for 
/Users/romanvg/.gradle/caches/modules-2/files-2.1/org.apache.xmlgraphics/batik-script/1.11/f7284dabc28aaa7407bef45f31dd204e58a35810/batik-script-1.11.jar
Caused by: java.lang.module.InvalidModuleDescriptorException: Provider class 
org.apache.batik.bridge.RhinoInterpreterFactory not in module
Process 'Gradle Test Executor 46' finished with non-zero exit value 1
org.gradle.process.internal.ExecException: Process 'Gradle Test Executor 46' 
finished with non-zero exit value 1
{code}
Here's a more detailed TravisCI run and Gradle scan, for reference:

[https://travis-ci.org/umccr/igv/builds/514966124]

[https://scans.gradle.com/s/z3oulnfefttkm/console-log]

Then my first attempt is to just exclude _batik-bridge_ and _batik-script_ via 
Gradle:
{code:java}
exclude group: 'org.apache.xmlgraphics', module: 'batik-bridge'
exclude group: 'org.apache.xmlgraphics', module: 'batik-script'  
{code}
 
 But unfortunately this goes further down the dependencies rabbit hole with 
xalan, bsf et al:
{code:java}
Error occurred during initialization of boot layer 
java.lang.module.FindException: Unable to derive module descriptor for 
/Users/romanvg/.gradle/caches/modules-2/files-2.1/xalan/xalan/2.7.2/d55d3f02a56ec4c25695fe67e1334ff8c2ecea23/xalan-2.7.2.jar
 Caused by: java.lang.module.InvalidModuleDescriptorException: Provider class 
org.apache.bsf.BSFManager not in module Process 'Gradle Test Executor 188' 
finished with non-zero exit value 1{code}
Can somebody tell me if in _batik-script-1.11.jar_ the Java11 
module-info.class, services, etc... We have not found a module descriptor 
within the _batik-script_ jar. We suspect that the RhinoInterpreterFactory 
service reference points to a different jar file, namely:

 
{code:java}
org.apache.batik.script.InterpreterFactory ->  
org.apache.batik.bridge.RhinoInterpreterFactory 
{code}
Is there an easy fix so that the _RhinoInterpreterFactory_ error does not show 
up in the first place?

Thanks in advance for any hint!



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to