¿ªÔÆÌåÓý

ctrl + shift + ? for shortcuts
© 2025 Groups.io

Help with jre 21 & BNC 3.20


 

Hi all,
I¡¯m currently trying to set up IB Gateway 10.30.1s with IBC 3.20.0 on my Raspberry Pi, using a custom Dockerfile based on Ubuntu 24.04 for running IB on my raspi (ARM64).
```FROM ubuntu:24.04 AS setup ENV
IB_GATEWAY_VERSION=10.30.1s
ENV IB_GATEWAY_RELEASE_CHANNEL=stable
ENV IBC_VERSION=3.20.0
```
For Java, I¡¯m using an ARM-compatible version of the JDK from BellSoft:?
However, I¡¯m encountering an issue when running the gateway. The log shows this error:
```java.lang.reflect.InaccessibleObjectException: Unable to make private static javax.swing.UIManager$LAFState javax.swing.UIManager.getLAFState() accessible: module java.desktop does not "opens javax.swing" to unnamed module @8f4ea7c```

it appears that the issue is related to?IBC's interaction with?Java's module system. Specifically, it seems to be a problem with access restrictions on Java¡¯s ```javax.swing```?package, which is enforced by the?java.desktop?module in newer Java versions

I¡¯ve considered adding the following JVM argument to the?```ibgateway.vmoptions```?file:
```--add-opens java.desktop/javax.swing=ALL-UNNAMED```

?

This argument would open up the necessary parts of?```javax.swing```?to the unnamed module and may allow the gateway to function properly.

At this point, I¡¯m unsure whether the root cause is due to IBC not being fully compatible with Java 21 or if there is another configuration issue. Has anyone else faced this problem or have any advice on how to properly configure?IBC?with?Java 21?in a Docker environment?

Many thanks from Paris
John


Join [email protected] to automatically receive all group messages.