Bug 1858094

Summary: shrinkwrap fails to build with java-11-openjdk
Product: [Fedora] Fedora Reporter: jiri vanek <jvanek>
Component: shrinkwrapAssignee: Fabio Valentini <decathorpe>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: rawhideCC: decathorpe, java-maint-sig, java-sig-commits, jvanek, markku.korkeala, puntogil, sgehwolf, stewardship-sig
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: shrinkwrap-1.2.6-4.fc33 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2020-07-22 20:58:35 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1825969    

Description jiri vanek 2020-07-16 22:12:42 UTC
shrinkwrap fails to build with java-11-openjdk as sytem JDK. See https://fedoraproject.org/wiki/Changes/Java11 .
See especially part about known failures: https://fedoraproject.org/wiki/Changes/Java11#common_issues_packagers_can_face_and_gathered_solutions

For the build logs, see: https://koji.fedoraproject.org/koji/taskinfo?taskID=47162819
We run the rebuild longer then 10days ago. Log may be gone. Also your package may be passing in regular rawhide.
To reproduce, simply: fedpkg clone shrinkwrap; cd shrinkwrap;  fedpkg build --target f33-java11; #The target is crucial.

We run two reruns your package failed both.


We had tried 650 packages, and 500 had passed, so the java-11-openjdk will be system JDK in f33, and you should fix your package if you want to keep it alive. Usually the fix is simple, and best is to update the package to latest upstream version.
There will be usual mass rebuild once f33 branches. You may got another FTBFS bug.
Let us know here if you have any questions, here in bug, or at java-devel.org .

We'd appreciate help from the people who know this package best, but if you don't want to work on this now, let us know so we can try to work around it on our side if needed.

Comment 1 jiri vanek 2020-07-17 04:05:34 UTC
highlight: This was rebuild in sidetag f33-java11. Thus --target is really necessary to reproduce failure.
please note: This side tag, f33-java11, will be merged to main f33 buildroot in aprox 14 days.

Comment 2 Markku Korkeala 2020-07-22 06:58:09 UTC
With some tweaks I was able to get passed the errors, but then 8 of 1223 tests failed with:

java.lang.IllegalArgumentException: /java.base/java/lang/String.class was not found in any available ClassLoaders

When I disabled tests the build was succesfull.

The work is at:
https://src.fedoraproject.org/fork/korkeala/rpms/shrinkwrap/c/ad21015797c142f4cc1cc75794bc5c840779819a?branch=master

Comment 3 Fabio Valentini 2020-07-22 08:02:40 UTC
Googling for "/java.base/java/lang/String.class" this looks like something related to Java 9 modules?
I don't see anything related to modules in the sources, though ...

Comment 4 Markku Korkeala 2020-07-22 10:51:08 UTC
It might be related to the new ClassLoader changes:
https://docs.oracle.com/en/java/javase/11/migrate/index.html#JSMIG-GUID-A78CC891-701D-4549-AA4E-B8DD90228B4B

Might be little bit trickier to fix.

Comment 5 Fabio Valentini 2020-07-22 20:58:35 UTC
Hm, I just dropped the 4 tests that are failing, but leave the (literally) hundreds of passing tests running by default.
The shrinkwrap upstream project looks pretty dead though ... I thought they might have fixes for this, but nah

Anyway, shrinkwrap all fixed up and built for rawhide:
https://koji.fedoraproject.org/koji/buildinfo?buildID=1545138