X-Windows deve essere installato su una Linux-box affinché Java possa visualizzare grafica a schermo intero?Java: Grafica in Linux
risposta
Altri rispondenti sembrano presumere che "la grafica a schermo intero in Java" significhi necessariamente "un'implementazione funzionante di AWT". Questo, naturalmente, non è necessariamente vero, poiché è perfettamente possibile (alcuni direbbero anche desiderabile) utilizzare Java senza AWT.
Cairo è una libreria di rendering grafico 2D che può essere utilizzata da Java e può anche essere utilizzata senza X11. A prima vista sembra come se fosse possibile configurarlo per questo scenario. Dovrai configurarlo per usare il rendering OpenGL e fornire un'implementazione OpenGL non X11 adatta (ad esempio, MesaGL con il driver del dispositivo 'fbdev').
SDLJava è una porta Java della famosa libreria di sviluppo di giochi C SDL. Anche questo dovrebbe essere in grado di fare quello che chiedi, anche se non sembra essere stato aggiornato dal 2005, quindi se hai qualche problema con esso il supporto potrebbe non essere disponibile.
In alternativa, è possibile utilizzare sempre un codice C piuttosto semplice per aprire e configurare il framebuffer e quindi utilizzare JNI per restituire il framebuffer mappato in memoria come ByteBuffer in modalità diretta, in modo da poter disegnare direttamente.
La "grafica a schermo intero" è un po 'vaga.
Ad ogni modo, a quanto pare, è in corso uno sforzo per accedere al framebuffer da Java: Framebuffer Toolkit.
L'obiettivo di questo progetto è quello di produrre un corpo di codice che è un'implementazione pari framebuffer basato leggero per AWT e Swing. L'obiettivo di questo codice è rimuovere la dipendenza su X o altri livelli grafici in modo tale che la grafica possa essere reindirizzata a un framebuffer (ad esempio un buffer raw, VNC, ecc.). Questo esempio di implementazione preferirà soluzioni puramente Java, con punti di estensione pubblici disponibili per immettere le risorse native secondo necessità.
Vedere Project proposal: fbtoolkit.
Per visualizzare davvero qualcosa di grafico sullo schermo, sì. Bud c'è una versione headless del JRE per il solo fatto di eseguirlo. Non vedrai alcun output grafico, ma funzionerà. In alternativa, è possibile accedere in remoto e utilizzare l'inoltro X per eseguire il codice java sul server, ma lasciare che il client gestisca la visualizzazione della grafica.
Su un dispositivo incorporato, ad esempio un Raspberry Pi, se non si desidera passare attraverso X11 completo con Java AWT + Swing standard, questo progetto https://github.com/ttww/JavaFrameBuffer per scrivere direttamente nel buffer del frame sembra interessante.
Un'alternativa può essere l'uso, ad es. SWT su GTK, o Qt Jambi, per scrivere nel Frame Buffer (sia GTK che QT possono usare direttamente un FB senza X11).
- 1. Problemi di grafica Java
- 2. Libreria grafica Java
- 3. Libreria grafica Java
- 4. Grafica basata su pixel nell'applicazione terminale Linux
- 5. Grafica non visualizzata in JLayeredPane (oscillazione java)
- 6. Grafica di gioco 2D Java
- 7. Java: crea grafica senza awt?
- 8. Libreria grafica in C
- 9. Visualizzazione grafica in Silverlight
- 10. Libreria grafica 2D high-end Java (SE)
- 11. Gioco pong Java Grafica o geom 2D
- 12. Errore tecnico di grafica di Java Swing?
- 13. Come ridimensionare l'immagine tamponata n grafica 2d in java?
- 14. Java compilato in Windows funziona in Linux?
- 15. Classpath Java - Linux
- 16. Grafica in ASP.Net (C#)
- 17. tabella grafica in r
- 18. Grafica raster in xterm?
- 19. Grafica vettoriale in Android
- 20. Grafica in C# (NET)
- 21. Programmazione grafica 2D semplice
- 22. Aggiornamento grafica
- 23. Autentica utente basato su linux in java
- 24. impostazione percorso classe Java in linux?
- 25. discussioni Ispezione Java in Linux utilizzando top
- 26. Visualizzazione colorazione grafica
- 27. Grafica test unità
- 28. Funzionalità e Linux e Java
- 29. Demone Java sotto Linux: Scelte?
- 30. Catena grafica markov in javascript
L'obiettivo dell'OP era utilizzare la grafica, non utilizzare la versione senza testa di JRE. –