New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Joda-beans 2.1 not compatible with OW2 ASM 5.0 #188

Closed
imode69 opened this Issue Mar 7, 2018 · 7 comments

Comments

Projects
None yet
3 participants
@imode69

imode69 commented Mar 7, 2018

Not certain but is seems that joda-beans 2.1 (or one of it's transitive dependencies) on the maven repo was compiled with Java 9. This is causing an issue running a web service in TomEE 8.5 given that there is a dependency in tomcat on the ASM 5.0 bytecode manipulation library which only supports <= Java8.

@jodastephen

This comment has been minimized.

Member

jodastephen commented Mar 7, 2018

Joda-Beans code is still based on Java 8, but the jar file contains module-info.class compiled on Java 9. That is how the project is built now, so if you can't work with it you'd need to remove module-info.class from the jar file.

@imode69

This comment has been minimized.

imode69 commented Mar 7, 2018

@jodastephen

This comment has been minimized.

Member

jodastephen commented Mar 7, 2018

I'm sorry, but forking the project for company policies or outdated app servers isn't really practical. Java 11 will be out in 7 months time and is the next long term support release, with Java 8 support stopping soon after. Also, bear in mind that more and more libraries are going to contain module.info.class going forward - this problem isn't going away!

jodastephen added a commit that referenced this issue Mar 13, 2018

Add classic jar file
For those that can't handle module-info.class
Fixes #188
@jodastephen

This comment has been minimized.

Member

jodastephen commented Mar 13, 2018

For v2.2 there is a "classic" version of the jar file:

<dependency>
  <groupId>org.joda</groupId>
  <artifactId>joda-beans</artifactId>
  <version>2.2</version>
  <classifier>classic</classifier>
</dependency>

@jodastephen jodastephen added the Fixed label Mar 13, 2018

@bjhargrave

This comment has been minimized.

bjhargrave commented Mar 22, 2018

I wonder if putting module-info.class in META-INF/versions/9 (and adding Multi-Release: true to the manifest) could avoid the need for a classic variant?

@jodastephen

This comment has been minimized.

Member

jodastephen commented Mar 22, 2018

No, as some tools can't cope with multi-release jars.

@bjhargrave

This comment has been minimized.

bjhargrave commented Mar 22, 2018

Caught between a rock and a hard place... :-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment