You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since bump to JRE 17 in #23 the container is broken since HA-Bridge is not Java 17 compatible. This seems to be related to a shaded version of cglib in Google Guice 4.1.0. cglib was removed in 5.0.1 and official Java 17 support was archived in 5.1.0. A bump to 5.1.0 might fix this but don't know if such a PR would be merged by the HA-Bridge maintainer. I created PR bwssytems/ha-bridge#1405 for this.
Expected Behavior
The container spins up fine
Steps To Reproduce
Just spin up the Docker container. A downgrade to v5.4.1-ls162 works.
Environment
- OS: Debian 12.5 "Bookworm" in Proxmox LXC container
- How docker service was installed:
[Using the APT repository](https://docs.docker.com/engine/install/debian/#install-using-the-repository)
https://www.linuxserver.io/donate/
───────────────────────────────────────
GID/UID
───────────────────────────────────────
User UID: 1000
User GID: 1000
───────────────────────────────────────
[custom-init] No custom files found, skipping...
2024-04-05 11:09:22,808 [main] INFO com.bwssystems.HABridge.HABridge - HA Bridge startup sequence...
2024-04-05 11:09:22,818 [main] INFO com.bwssystems.HABridge.HABridge - HA Bridge (v5.4.1) initializing....
2024-04-05 11:09:22,818 [main] INFO com.bwssystems.HABridge.BridgeSettings - reading from config file: /config/ha-bridge.config
2024-04-05 11:09:22,909 [main] INFO spark.staticfiles.StaticFilesConfiguration - StaticResourceHandler configured with folder = /public
2024-04-05 11:09:22,915 [main] INFO com.bwssystems.HABridge.SystemControl - System control service started....
2024-04-05 11:09:22,928 [main] INFO com.bwssystems.HABridge.util.UDPDatagramSender - Initializing UDP response Socket...
2024-04-05 11:09:22.934:INFO::Thread-0: Logging initialized @313ms to org.eclipse.jetty.util.log.StdErrLog
2024-04-05 11:09:22,935 [main] INFO com.bwssystems.HABridge.util.UDPDatagramSender - UDP response Socket initialized to: 50000
2024-04-05 11:09:22,937 [main] INFO com.bwssystems.HABridge.plugins.http.HTTPHome - HTTP Home created.
2024-04-05 11:09:22,938 [main] INFO com.bwssystems.HABridge.plugins.harmony.HarmonyHome - Harmony Home created.
2024-04-05 11:09:22,961 [Thread-0] INFO spark.embeddedserver.jetty.EmbeddedJettyServer - == Spark has ignited ...
2024-04-05 11:09:22,961 [Thread-0] INFO spark.embeddedserver.jetty.EmbeddedJettyServer - >> Listening on 0.0.0.0:8080
2024-04-05 11:09:22.963:INFO:oejs.Server:Thread-0: jetty-9.4.z-SNAPSHOT, build timestamp: 2017-11-21T22:27:37+01:00, git hash: 82b8fb23f757335bb3329d540ce37a2a2615f0a8
2024-04-05 11:09:22.976:INFO:oejs.session:Thread-0: DefaultSessionIdManager workerName=node0
2024-04-05 11:09:22.976:INFO:oejs.session:Thread-0: No SessionScavenger set, using defaults
2024-04-05 11:09:22.978:INFO:oejs.session:Thread-0: Scavenging every 600000ms
2024-04-05 11:09:22.996:INFO:oejs.AbstractConnector:Thread-0: Started ServerConnector@b51650{HTTP/1.1,[http/1.1]}{0.0.0.0:8080}
2024-04-05 11:09:22.996:INFO:oejs.Server:Thread-0: Started @376ms
Exception in thread "main" com.google.common.util.concurrent.ExecutionError: com.google.common.util.concurrent.ExecutionError: java.lang.ExceptionInInitializerError
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2215)
at com.google.common.cache.LocalCache.get(LocalCache.java:4154)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5147)
at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5153)
at com.google.inject.internal.FailableCache.get(FailableCache.java:48)
at com.google.inject.internal.MembersInjectorStore.get(MembersInjectorStore.java:68)
at com.google.inject.internal.InjectorImpl.getMembersInjector(InjectorImpl.java:993)
at com.google.inject.internal.InjectorImpl.getMembersInjector(InjectorImpl.java:1000)
at com.google.inject.internal.InjectorImpl.injectMembers(InjectorImpl.java:986)
at com.bwssystems.HABridge.plugins.harmony.HarmonyServer.setup(HarmonyServer.java:64)
at com.bwssystems.HABridge.plugins.harmony.HarmonyHome.createHome(HarmonyHome.java:307)
at com.bwssystems.HABridge.plugins.harmony.HarmonyHome.<init>(HarmonyHome.java:40)
at com.bwssystems.HABridge.HomeManager.buildHomes(HomeManager.java:56)
at com.bwssystems.HABridge.HABridge.main(HABridge.java:92)
Caused by: com.google.common.util.concurrent.ExecutionError: java.lang.ExceptionInInitializerError
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2215)
at com.google.common.cache.LocalCache.get(LocalCache.java:4154)
at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:4158)
at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:5147)
at com.google.common.cache.LocalCache$LocalLoadingCache.getUnchecked(LocalCache.java:5153)
at com.google.inject.internal.FailableCache.get(FailableCache.java:48)
at com.google.inject.internal.ConstructorInjectorStore.get(ConstructorInjectorStore.java:50)
at com.google.inject.internal.ConstructorBindingImpl.initialize(ConstructorBindingImpl.java:138)
at com.google.inject.internal.InjectorImpl.initializeJitBinding(InjectorImpl.java:550)
at com.google.inject.internal.InjectorImpl.createJustInTimeBinding(InjectorImpl.java:887)
at com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive(InjectorImpl.java:808)
at com.google.inject.internal.InjectorImpl.getJustInTimeBinding(InjectorImpl.java:285)
at com.google.inject.internal.InjectorImpl.getBindingOrThrow(InjectorImpl.java:217)
at com.google.inject.internal.SingleFieldInjector.<init>(SingleFieldInjector.java:42)
at com.google.inject.internal.MembersInjectorStore.getInjectors(MembersInjectorStore.java:131)
at com.google.inject.internal.MembersInjectorStore.createWithListeners(MembersInjectorStore.java:98)
at com.google.inject.internal.MembersInjectorStore.access$000(MembersInjectorStore.java:37)
at com.google.inject.internal.MembersInjectorStore$1.create(MembersInjectorStore.java:45)
at com.google.inject.internal.MembersInjectorStore$1.create(MembersInjectorStore.java:42)
at com.google.inject.internal.FailableCache$1.load(FailableCache.java:37)
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3716)
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2424)
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2298)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2211)
... 14 more
Caused by: java.lang.ExceptionInInitializerError
at com.google.inject.internal.cglib.reflect.$FastClass$Generator.getProtectionDomain(FastClass.java:73)
at com.google.inject.internal.cglib.core.$AbstractClassGenerator.create(AbstractClassGenerator.java:206)
at com.google.inject.internal.cglib.reflect.$FastClass$Generator.create(FastClass.java:65)
at com.google.inject.internal.BytecodeGen.newFastClassForMember(BytecodeGen.java:252)
at com.google.inject.internal.BytecodeGen.newFastClassForMember(BytecodeGen.java:203)
at com.google.inject.internal.DefaultConstructionProxyFactory.create(DefaultConstructionProxyFactory.java:53)
at com.google.inject.internal.ProxyFactory.create(ProxyFactory.java:158)
at com.google.inject.internal.ConstructorInjectorStore.createConstructor(ConstructorInjectorStore.java:90)
at com.google.inject.internal.ConstructorInjectorStore.access$000(ConstructorInjectorStore.java:29)
at com.google.inject.internal.ConstructorInjectorStore$1.create(ConstructorInjectorStore.java:37)
at com.google.inject.internal.ConstructorInjectorStore$1.create(ConstructorInjectorStore.java:33)
at com.google.inject.internal.FailableCache$1.load(FailableCache.java:37)
at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3716)
at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2424)
at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2298)
at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2211)
... 37 more
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int,java.security.ProtectionDomain) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @37d0ee48
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:354)
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199)
at java.base/java.lang.reflect.Method.setAccessible(Method.java:193)
at com.google.inject.internal.cglib.core.$ReflectUtils$1.run(ReflectUtils.java:52)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.google.inject.internal.cglib.core.$ReflectUtils.<clinit>(ReflectUtils.java:42)
... 53 more
Connection to localhost (::1) 8080 port [tcp/http-alt] succeeded!
[ls.io-init] done.
The text was updated successfully, but these errors were encountered:
Is there an existing issue for this?
Current Behavior
Since bump to JRE 17 in #23 the container is broken since HA-Bridge is not Java 17 compatible. This seems to be related to a shaded version of cglib in Google Guice 4.1.0. cglib was removed in 5.0.1 and official Java 17 support was archived in 5.1.0. A bump to 5.1.0 might fix this but don't know if such a PR would be merged by the HA-Bridge maintainer. I created PR bwssytems/ha-bridge#1405 for this.
Expected Behavior
The container spins up fine
Steps To Reproduce
Just spin up the Docker container. A downgrade to v5.4.1-ls162 works.
Environment
CPU architecture
x86-64
Docker creation
--- services: habridge: image: lscr.io/linuxserver/habridge:latest container_name: habridge environment: - PUID=1000 - PGID=1000 - TZ=Europe/Berlin #- "SEC_KEY=<Your Key To Encrypt Security Data>" volumes: - /opt/habridge-data:/config ports: - 80:8080 - 50000:50000 restart: unless-stopped
Container logs
The text was updated successfully, but these errors were encountered: