this is a tracker for packages that are currently set to use both DEPEND and RDEPEND ">=virtual/jdk-1.8" and at the same time they provide module-info.java that needs to be compiled using at least jdk 9 (which is still masked atm). planned change in java-pkg-simple.eclass will ignore module-info.java if jdk < 9 is used for compilation (as it cannot compile module-info.java because it's a java 9+ feature). once jdk 11 and [gentoo-vm] on java 11 are unmasked, packages in this tracker must be revbumped to use DEPEND=">=virtual/jdk-11:*" so that they are recompiled using java version that can compile module-info.java to provide module-info.class in their jar files. those that already have jdk 11 enabled including [gentoo-vm] and have jdk 11 set as the default vm should not encounter any issues. but if they have java 11 enabled and jdk 1.8 is set as the default, there might be some issues when running apps that need module-info.class in jar files as those would be ignored during compilation and hence missing from the jar files. also, note that there are also packages that provide module-info.class but use other way to generate it, like using bndlib (for example tomcat). those packages (imo) should not be affected and should not be tracked here. for more information you can also have a look here: https://github.com/gentoo/gentoo/pull/21326#discussion_r654816135
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4419bceb0833e2b9ae045d9392f201ee359a84b7 commit 4419bceb0833e2b9ae045d9392f201ee359a84b7 Author: Miroslav Šulc <fordfrog@gentoo.org> AuthorDate: 2021-06-24 16:21:37 +0000 Commit: Miroslav Šulc <fordfrog@gentoo.org> CommitDate: 2021-06-24 16:21:59 +0000 java-pkg-simple.eclass: added support for module-info.java compilation for more info see https://bugs.gentoo.org/796875 Bug: https://bugs.gentoo.org/796875 Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org> eclass/java-pkg-simple.eclass | 57 ++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 53 insertions(+), 4 deletions(-)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bcd03209d095c9e170e49f706414ad1d380da7f9 commit bcd03209d095c9e170e49f706414ad1d380da7f9 Author: Miroslav Šulc <fordfrog@gentoo.org> AuthorDate: 2021-06-27 16:38:29 +0000 Commit: Miroslav Šulc <fordfrog@gentoo.org> CommitDate: 2021-06-27 16:39:29 +0000 java-pkg-simple.eclass: improved code related to java 9+ modules Bug: https://bugs.gentoo.org/796875 Signed-off-by: Miroslav Šulc <fordfrog@gentoo.org> eclass/java-pkg-simple.eclass | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-)
All packages that fall into this category should basically DEPEND=">=virtual/jdk-9:*" RDEPEND=">=virtual/jre-8:*" or, if, for example, compilation with Java 17 is not supported DEPEND=" || ( virtual/jdk:9 virtual/jdk:11 ) " RDEPEND=">=virtual/jre-8:*" as this will ensure that the java package is build with the correct target (8) while module-info.java is also compiled.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a890940dce62dea54a867901f85e37985bc76943 commit a890940dce62dea54a867901f85e37985bc76943 Author: Florian Schmaus <flow@gentoo.org> AuthorDate: 2022-05-03 20:19:05 +0000 Commit: Florian Schmaus <flow@gentoo.org> CommitDate: 2022-05-05 09:30:28 +0000 java-pkg-simple.eclass: eqawarn if module-info.java is not compiled In preperation of this ewarn part becoming 'die' (bug #842447), switch it to eqawarn to improve catching the affected packages. Bug: https://bugs.gentoo.org/796875 Bug: https://bugs.gentoo.org/842447 Signed-off-by: Florian Schmaus <flow@gentoo.org> Closes: https://github.com/gentoo/gentoo/pull/25306 eclass/java-pkg-simple.eclass | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-)