Strona 1 z 1

No X11 DISPLAY - java

: 10 wrz 2025, 21:44
autor: prymula
Hej
Swego czasu spłodziłem taką oto gierkę w Javie:
https://gitlab.com/pietraszczyk/samegame
W Debianie 12 uruchamiała się bez zarzutu, jednak w Ubuntu 25.04 oraz Debianie 13, próba uruchomienia, powoduje taki wyjątek:

Kod: Zaznacz cały

run:
     [java] Exception in thread "AWT-EventQueue-0" java.awt.HeadlessException: 
     [java] No X11 DISPLAY variable was set,
     [java] or no headful library support was found,
     [java] but this program performed an operation which requires it,
     [java] 
     [java] 	at java.desktop/java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:164)
     [java] 	at java.desktop/java.awt.Window.<init>(Window.java:553)
     [java] 	at java.desktop/java.awt.Frame.<init>(Frame.java:428)
     [java] 	at java.desktop/javax.swing.JFrame.<init>(JFrame.java:224)
     [java] 	at pietraszczyk.samegame.SameGame.createAndShowGUI(Unknown Source)
     [java] 	at pietraszczyk.samegame.SameGame$1.run(Unknown Source)
     [java] 	at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
     [java] 	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
     [java] 	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720)
     [java] 	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714)
     [java] 	at java.base/java.security.AccessController.doPrivileged(AccessController.java:400)
     [java] 	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:87)
     [java] 	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
     [java] 	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
     [java] 	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
     [java] 	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
     [java] 	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
     [java] 	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
     [java] 	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

BUILD SUCCESSFUL
Total time: 1 second 
Wyczytałem że problem można obejść, instalując Javę od Oracle – ale domyślam się że wiąże to się na akceptację subiektywnej licencji Oracle. Co mi nie pasuje.
Inną wskazówką, było zastosowanie eksportu:

Kod: Zaznacz cały

export DISPLAY=:0.0
co z kolei nie działa.
Jeśli któryś z forumowiczów spotkał się z taką sytuacją i przyszedł do głowy inny pomysł na obejście problemu, to byłbym wdzięczny.
Acha, pulpit Cinnamon uruchamiany jako Xsession

Jak dla mnie jest po prostu za dużo, tych wszystkich kombinacji. Jednak mnie olśniło, wcześniej poszedłem za bardzo na skróty przy instalacji pakietów. Nie wolno pominąć:

Kod: Zaznacz cały

default-jdk-headless
Ze mnie nie Sędziwy jęż tylko Zakręcona traszka !