Skip to content

Conversation

@koppor
Copy link
Member

@koppor koppor commented Sep 19, 2025

Final TODOs.


Tests:

  • Icon of DMG right
  • Icon of .bib files right - if not, we need to create a second jabref-bibtex.icns file with a different name than the application icon and relink in bibtexAssociations.properties.

This PR builds on #14057.

This PR tries to enable EA builds - to be able to report back to be able to report earlier to https://wiki.openjdk.org/display/quality/Quality+Outreach.


Eclipse Temurin's binaries should soon be available:

image

WIP, because Temurin is not yet available. AKA blocked by adoptium/temurin#96.

Hopefully, we can go back to Temurin (refs adoptium/adoptium-support#1271 (comment) and #13749

Uses "latest" for the dev container to reduce the places where we need to adapt version numbers.

Refs #13933

Maybe related issues

Steps to test

Run JabRef 😅

Mandatory checks

  • I own the copyright of the code submitted and I license it under the MIT license
  • [/] I manually tested my changes in running JabRef (always required)
  • [/] I added JUnit tests for changes (if applicable)
  • [/] I added screenshots in the PR description (if change is visible to the user)
  • [/] I described the change in CHANGELOG.md in a way that is understandable for the average user (if change is visible to the user)
  • [] I checked the user documentation: Is the information available and up to date? If not, I created an issue at https://github.com/JabRef/user-documentation/issues or, even better, I submitted a pull request updating file(s) in https://github.com/JabRef/user-documentation/tree/main/en.

@Siedlerchr
Copy link
Member

Requires gradle 9.1

@koppor
Copy link
Member Author

koppor commented Sep 23, 2025

Requires gradle 9.1

Then: Runners to 24; 25 is installed via toolchain 😅

Or wait until we updated our Gradle fork

@koppor
Copy link
Member Author

koppor commented Sep 29, 2025

With #13719, we use the most recent gradle development version

@koppor koppor marked this pull request as ready for review September 29, 2025 16:58
@koppor
Copy link
Member Author

koppor commented Sep 29, 2025

Are no x86 mac builds a show stopper?

grafik

@koppor
Copy link
Member Author

koppor commented Sep 29, 2025

seems to be fine for macOS:


  Java configuration:
    Distribution: temurin
    Version: 25.0.0+36.0.LTS
    Path: /Users/runner/hostedtoolcache/Java_Temurin-Hotspot_jdk/25.0.0-36.0.LTS/x64/Contents/Home

@koppor koppor added the dev: binaries Binary builds should be uploaded to builds.jabref.org label Sep 29, 2025
@koppor
Copy link
Member Author

koppor commented Sep 29, 2025

Mhh...

grafik

@koppor
Copy link
Member Author

koppor commented Sep 29, 2025

Seems to be the right commit - 0ae6281

@koppor
Copy link
Member Author

koppor commented Sep 29, 2025

macOS does not run with Amazon:

(loaded from file /Users/runner/work/***/***/jabgui/src/main/resources/icons/***.icns).
[18:17:44.601] jdk.jpackage.internal.model.PackagerException: java.nio.file.NoSuchFileException: ***.icns
	at jdk.jpackage/jdk.jpackage.internal.PackagingPipeline.execute(PackagingPipeline.java:487)
	at jdk.jpackage/jdk.jpackage.internal.PackagingPipeline.execute(PackagingPipeline.java:68)
	at jdk.jpackage/jdk.jpackage.internal.PackagerBuilder.execute(PackagerBuilder.java:67)
	at jdk.jpackage/jdk.jpackage.internal.MacDmgPackager$Builder.execute(MacDmgPackager.java:81)
	at jdk.jpackage/jdk.jpackage.internal.MacDmgBundler.execute(MacDmgBundler.java:80)
	at jdk.jpackage/jdk.jpackage.internal.Arguments.executeBundler(Arguments.java:741)
	at jdk.jpackage/jdk.jpackage.internal.Arguments.generateBundle(Arguments.java:702)
	at jdk.jpackage/jdk.jpackage.internal.Arguments.processArguments(Arguments.java:553)
	at jdk.jpackage/jdk.jpackage.main.Main.execute(Main.java:93)
	at jdk.jpackage/jdk.jpackage.main.Main.main(Main.java:54)
Caused by: java.nio.file.NoSuchFileException: ***.icns
	at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92)
	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106)
	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
	at java.base/sun.nio.fs.UnixFileSystem.copy(UnixFileSystem.java:960)
	at java.base/sun.nio.fs.UnixFileSystemProvider.copy(UnixFileSystemProvider.java:280)
	at java.base/java.nio.file.Files.copy(Files.java:1192)
	at jdk.jpackage/jdk.jpackage.internal.MacPackagingPipeline.writeFileAssociationIcons(MacPackagingPipeline.java:434)
	at jdk.jpackage/jdk.jpackage.internal.PackagingPipeline$DefaultTaskContext.execute(PackagingPipeline.java:573)
	at jdk.jpackage/jdk.jpackage.internal.MacPackagingPipeline$TaskContextProxy.execute(MacPackagingPipeline.java:454)
	at jdk.jpackage/jdk.jpackage.internal.PackagingPipeline.lambda$createTask$0(PackagingPipeline.java:604)
	at jdk.jpackage/jdk.jpackage.internal.pipeline.TaskPipelineBuilder$SequentialWrapperTask.call(TaskPipelineBuilder.java:130)
	at jdk.jpackage/jdk.jpackage.internal.pipeline.TaskPipelineBuilder$SequentialWrapperTask.call(TaskPipelineBuilder.java:121)
	at jdk.jpackage/jdk.jpackage.internal.PackagingPipeline.execute(PackagingPipeline.java:480)
	... 9 more

@koppor koppor changed the title [WIP] Update to JDK25 (Temurin) [WIP] Update to JDK25 (Amazon) Sep 29, 2025
@koppor koppor mentioned this pull request Sep 29, 2025
1 task
@koppor
Copy link
Member Author

koppor commented Sep 29, 2025

Supersed by #13991 Temurin does not work, because of

--add-modules jdk.incubator.vector

@koppor koppor closed this Sep 29, 2025
@koppor koppor reopened this Sep 29, 2025
@Siedlerchr
Copy link
Member

22:12:32.668] Benutzerdefinierte Packageressource [DMG-Hintergrund] wird verwendet (aus JabRef-background.tiff geladen).
[22:12:32.673] Benutzerdefinierte Packageressource [Symbol "Datenträger"] wird verwendet (aus JabRef-volume.icns geladen).
[22:12:32.675] DMG-Setup wird vorbereitet: /var/folders/fk/ymndv_ds5h1dv11fbh61v4g40000gn/T/jdk.jpackage12833249008220820156/config/JabRef-dmg-setup.scpt.
[22:12:32.676] Benutzerdefinierte Packageressource [DMG-Setupskript] wird verwendet (aus JabRef-dmg-setup.scpt geladen).
[22:12:32.679] Benutzerdefinierte Packageressource [Info.plist von Java Runtime] wird verwendet (aus Runtime-Info.plist geladen).
[22:12:32.680] Benutzerdefinierte Packageressource [icon] wird verwendet (aus JabRef.icns geladen).
[22:12:32.715] jdk.jpackage.internal.model.PackagerException: java.nio.file.NoSuchFileException: jabref.icns
	at jdk.jpackage/jdk.jpackage.internal.PackagingPipeline.execute(PackagingPipeline.java:487)
	at jdk.jpackage/jdk.jpackage.internal.PackagingPipeline.execute(PackagingPipeline.java:68)
	at jdk.jpackage/jdk.jpackage.internal.PackagerBuilder.execute(PackagerBuilder.java:67)
	at jdk.jpackage/jdk.jpackage.internal.MacDmgPackager$Builder.execute(MacDmgPackager.java:81)
	at jdk.jpackage/jdk.jpackage.internal.MacDmgBundler.execute(MacDmgBundler.java:80)
	at jdk.jpackage/jdk.jpackage.internal.Arguments.executeBundler(Arguments.java:741)
	at jdk.jpackage/jdk.jpackage.internal.Arguments.generateBundle(Arguments.java:702)
	at jdk.jpackage/jdk.jpackage.internal.Arguments.processArguments(Arguments.java:553)
	at jdk.jpackage/jdk.jpackage.main.Main.execute(Main.java:93)
	at jdk.jpackage/jdk.jpackage.main.Main.main(Main.java:54)
Caused by: java.nio.file.NoSuchFileException: jabref.icns
	at java.base/sun.nio.fs.UnixException.translateToIOException(UnixException.java:92)
	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:106)
	at java.base/sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:111)
	at java.base/sun.nio.fs.UnixFileSystem.copy(UnixFileSystem.java:960)
	at java.base/sun.nio.fs.UnixFileSystemProvider.copy(UnixFileSystemProvider.java:280)
	at java.base/java.nio.file.Files.copy(Files.java:1192)
	at jdk.jpackage/jdk.jpackage.internal.MacPackagingPipeline.writeFileAssociationIcons(MacPackagingPipeline.java:434)
	at jdk.jpackage/jdk.jpackage.internal.PackagingPipeline$DefaultTaskContext.execute(PackagingPipeline.java:573)
	at jdk.jpackage/jdk.jpackage.internal.MacPackagingPipeline$TaskContextProxy.execute(MacPackagingPipeline.java:454)
	at jdk.jpackage/jdk.jpackage.internal.PackagingPipeline.lambda$createTask$0(PackagingPipeline.java:604)
	at jdk.jpackage/jdk.jpackage.internal.pipeline.TaskPipelineBuilder$SequentialWrapperTask.call(TaskPipelineBuilder.java:130)
	at jdk.jpackage/jdk.jpackage.internal.pipeline.TaskPipelineBuilder$SequentialWrapperTask.call(TaskPipelineBuilder.java:121)
	at jdk.jpackage/jdk.jpackage.internal.PackagingPipeline.execute(PackagingPipeline.java:480)
	... 9 more
java.nio.file.NoSuchFileException: jabref.icns

@koppor
Copy link
Member Author

koppor commented Oct 10, 2025

image

@koppor koppor changed the title [WIP] Enable Java EA builds [WIP] Enable Java EA builds and prepare JDK 26 Oct 10, 2025
@koppor
Copy link
Member Author

koppor commented Oct 10, 2025

The patch openjdk/jfx#1232 to JavaFX should enable publishing jmods for jdk.jsobject.

@koppor
Copy link
Member Author

koppor commented Oct 10, 2025

Future work (source: internal discussions)

  • declare https://download2.gluonhq.com/ as repository
  • tell gradle through transformations to extract a ZIP
  • instruct patch rules of javafx to use the jmod instead of zip

@github-actions
Copy link
Contributor

The build of this PR is available at https://builds.jabref.org/pull/13937/merge.

@koppor koppor removed the dev: binaries Binary builds should be uploaded to builds.jabref.org label Oct 14, 2025
@koppor
Copy link
Member Author

koppor commented Oct 30, 2025

This could enable trying out Valhala https://inside.java/2025/10/27/try-jep-401-value-classes/

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

Labels

status: depends-on-external A bug or issue that depends on an update of an external library

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants