[hibernate-dev] Java 9: progress on compatibility

Gunnar Morling gunnar at hibernate.org
Mon Jun 13 03:59:41 EDT 2016


Yep, we discussed that approach last year already:
http://lists.jboss.org/pipermail/hibernate-dev/2015-March/012250.html

2016-06-13 9:49 GMT+02:00 Sanne Grinovero <sanne at hibernate.org>:

> On 13 June 2016 at 07:34, Gunnar Morling <gunnar at hibernate.org> wrote:
> > Hey,
> >
> > I hit the same issue with the injection plug-in in HV.
> >
> > It was used for obtaining the version of HV at runtime. I worked around
> it
> > by obtaining that from the package instead [1]:
> >
> >     return SomeHvClass.class.getPackage().getImplementationVersion();
>
> Right, that looks a lot like
>  -
> https://github.com/hibernate/hibernate-search/commit/fde388e9fd822abf877e56ab4147ac95c9fffd51
> ;)
>
> >
> > If that's all what the injection plug-in is used for in ORM as well (and
> you
> > don't depend on that version info e.g. during testing in the IDE, where
> > there is no JAR manifest yet which is the source of the version with that
> > approach), you could do the same there.
> >
> > --Gunnar
> >
> > [1]
> >
> https://github.com/hibernate/hibernate-validator/commit/8a0eb0bfbc7610ea6fc9962eef024a98c3f9468c#diff-963bab11ed76f80c4a804903ed66e03fR34
> >
> >
> > 2016-06-12 22:18 GMT+02:00 Sanne Grinovero <sanne at hibernate.org>:
> >>
> >> Some more progress by simply setting this environment variable:
> >>
> >>
> GRADLE_OPTS="-XaddExports:java.security.sasl/com.sun.security.sasl.digest=ALL-UNNAMED
> >> -XaddExports:java.security.sasl/com.sun.security.sasl=ALL-UNNAMED
> >> -XaddExports:jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED
> >> -XaddExports:jdk.unsupported/sun.reflect=ALL-UNNAMED -addmods
> >> java.xml.bind"
> >>
> >> But it's getting tricky:
> >>
> >> Caused by: compile error: javassist.NotFoundException: java.lang.String
> >>    at javassist.compiler.Javac.compileBody(Javac.java:229)
> >>    at javassist.CtBehavior.setBody(CtBehavior.java:438)
> >>    ... 76 more
> >>
> >> This seems to be caused by the following plugin, which I'm not familiar
> >> with:
> >>  -
> >>
> org.hibernate.build.gradle.inject.InjectionAction.execute(InjectionAction.java:62)
> >> Is this something which we could disable/skip/remove for now, or
> >> update to not require Javassist?
> >>
> >> Thanks,
> >> sanne
> >>
> >> On 12 June 2016 at 20:56, Sanne Grinovero <sanne at hibernate.org> wrote:
> >> > On 11 June 2016 at 18:47, Sanne Grinovero <sanne at hibernate.org>
> wrote:
> >> >> On 11 June 2016 at 18:25, Steve Ebersole <steve at hibernate.org>
> wrote:
> >> >>> The ORM failure seems to be a Gradle/JDK9 issue.  Any idea about
> that?
> >> >>
> >> >> Not sure, that's a new one :)
> >> >> It could be related to https://issues.gradle.org/browse/GRADLE-3287
> ?
> >> >>
> >> >> Might be worth trying to upgrade to Gradle 2.12 .. I'm not at a
> >> >> terminal at the moment, I could try later.
> >> >
> >> > I've upgraded to Gradle 2.13, the pull request is here:
> >> >  - https://github.com/hibernate/hibernate-orm/pull/1417#
> >> >
> >> > It solved that specific issue, but it's not enough. I'm still trying
> >> > to hack a workaround for the next step, but in the meantime that PR
> >> > could be considered independently.
> >> >
> >> > I could use some pointers with Gradle and the custom plugins we use;
> >> > essentially we need to pass some additional JVM flags, including to
> >> > javac, like here:
> >> >  -
> >> >
> https://github.com/hibernate/hibernate-orm/commit/5e6a8ea754e3c4c59925fe7f824092490efc008b
> >> >
> >> > But the failure happens during:
> >> >  Execution failed for task ':hibernate-core:xjc'
> >> >
> >> > and I'm not sure how to override the JVM flags for that plugin
> >> > execution.
> >> >
> >> > Thanks,
> >> > Sanne
> >> >
> >> >
> >> >>
> >> >>>
> >> >>> On Fri, Jun 10, 2016, 4:39 PM Sanne Grinovero <sanne at hibernate.org>
> >> >>> wrote:
> >> >>>>
> >> >>>> Hi all,
> >> >>>> please try to have a look at this page when you have a moment:
> >> >>>>  - http://ci.hibernate.org/view/JDK9/
> >> >>>>
> >> >>>> Hibernate Search is working, and it shouldn't be too hard to get
> the
> >> >>>> others "green" as well.
> >> >>>>
> >> >>>> I've disabled some integration tests to get there, notably:
> >> >>>>  - OSGi tests: Karaf is not ready for it.
> >> >>>>  - Documentation build: Asciidoc will probably need an update.
> >> >>>>  - WildFly integration tests: the WildFly team is aware, will need
> a
> >> >>>> minor upgrade.
> >> >>>>
> >> >>>> I don't believe these issues are relevant, so I'm satisfied that
> all
> >> >>>> other tests working fine mean that the project will pretty much
> work
> >> >>>> out of the box for end users - at worst their container won't work,
> >> >>>> but that's not our responsibility to test for.
> >> >>>>
> >> >>>> Could you all contribute a bit to get all projects show "green" on
> >> >>>> this
> >> >>>> page?
> >> >>>>
> >> >>>> Some "workarounds" you might want to apply:
> >> >>>>  - the Logger interfaces won't compile because of a known issue,
> this
> >> >>>> can be worked around for now by having the compilation phase also
> >> >>>> explicitly depend on this artifact:
> >> >>>>
> >> >>>>
> >> >>>>
> https://github.com/hibernate/hibernate-search/blob/master/pom.xml#L878-L883
> >> >>>>  - you'll have a ClassNotFoundException on JAXB usage unless you
> set
> >> >>>> this JVM flag:
> >> >>>>
> >> >>>>
> https://github.com/hibernate/hibernate-search/blob/master/pom.xml#L1429
> >> >>>> (This one is not a bug but will be required to be set by end users
> as
> >> >>>> well - or we provide our own XML parser, that might be more user
> >> >>>> friendly).
> >> >>>>
> >> >>>> As far as I know, other issues with the build tools have been
> solved
> >> >>>> already - including Gradle.
> >> >>>>
> >> >>>> Thanks,
> >> >>>> Sanne
> >> >>>> _______________________________________________
> >> >>>> hibernate-dev mailing list
> >> >>>> hibernate-dev at lists.jboss.org
> >> >>>> https://lists.jboss.org/mailman/listinfo/hibernate-dev
> >> _______________________________________________
> >> hibernate-dev mailing list
> >> hibernate-dev at lists.jboss.org
> >> https://lists.jboss.org/mailman/listinfo/hibernate-dev
> >
> >
>


More information about the hibernate-dev mailing list