Ich habe einfach die Farbe in 32 Bit geändert, sowohl in meinem Desktop als auch in meinem RDP-Client. Java sah perfekt aus.
Java Swing über Remote Desktop - Seltsames, komisches GUI-Squashing
Ich dachte, dass diese Frage für SuperUser mehr passt als für StackOverflow, da es nicht um die eigentliche Java-Programmierung geht, obwohl Programmierer das Problem wahrscheinlich wahrnehmen werden. Lassen Sie mich trotzdem mit einigen Statistiken beginnen, bevor ich die eigentliche Frage stelle:
Laptop:
- Windows 7 x32
- Bildschirmauflösung 1024 x 768; Nvidia GeForce Go 6200
- Verbindung zum Desktop über ein drahtloses Ad-hoc-Netzwerk
- Zugang zum Internet via Desktop
Desktop:
- Windows 7 x64
- Bildschirmauflösung 1920 x 1080
- Verbunden mit einem Laptop über ein drahtloses Ad-hoc-Netzwerk
- Zugang zum Internet über Kabelmodem
Ich verbinde mich über Remote Desktop von meinem Desktop aus mit meinem Laptop, um den großen Bildschirm zu nutzen. Ich programmiere auf meinem Laptop (aus Gründen der Portabilität). Alles andere läuft reibungslos und schnell über Remote Desktop, da beide Computer direkt über das Ad-hoc-Funknetz verbunden sind.
Das einzige Problem ist folgendes: Java Swing-Apps zeigen die GUI nicht richtig an. Ich habe eine Java-Swing-Anwendung erworben und debugge sie in Eclipse. Hier ist was ich bekam, als ich die App startete:
Anscheinend ist an der GUI-Anwendung, die ich debugge, anscheinend kein Fehler aufgetreten, da das Java Control Panel das gleiche Problem aufweist.
Ich habe in Google darüber und da gesucht; die nächste, die ich zu einer Lösung gekommen ist dies . Aber leider hat die Verwendung von -Dsun.java2d.nodraw=true
keine Wirkung.
Dies geschieht nur über Remote Desktop. Ich habe es lokal probiert und die GUI-Apps werden richtig angezeigt. Dies ist kein Dealbreaker für mich, da ich bei der Entwicklung von Java Swing-Apps auf die Verwendung von Remote Desktop verzichten kann. Ich würde jedoch gerne wissen, ob jemand dies gefunden hat und eine Lösung gefunden hat.
PS: Bei der gesamten Software (Eclipse, Java JRE usw.) handelt es sich um die neuesten Versionen.
6 Antworten auf die Frage
- Beliebte
- Neu
- Mit Kommentaren
- Aktiv
Ich hatte das gleiche Problem und das Ändern der Farbtiefe funktionierte nicht für mich. Diese:
-Dsun.java2d.d3d=false
schien für mich zu arbeiten:
Ich kann Ihnen sagen, dass ich in der Vergangenheit die Farbtiefe etwas niedriger als die höchste Einstellung einstellen musste, wenn bestimmte Anwendungen über eine Remotedesktopverbindung wie Eclipse angezeigt werden.
Weitere Informationen zu einem möglichen Fehler in der Java VM finden Sie in dieser Antwort . Ich bezweifle sehr, dass dies der Fall ist, da Sie keine Fehlermeldungen erhalten haben, die darauf hinweisen, dass keine Java Virtual Machine erstellt werden kann. Aber es lohnt sich trotzdem!
My same problem was fixed after I logged off windows and logged on again for the user connected to Remote Desktop (NOT merely disconnecting from Remote Dekstop).
Ich hatte eine Situation, in der meine Java-GUI nicht vollständig malen konnte, dh der gesamte Inhalt des Hauptfensters war veraltet und würde nicht aktualisiert, wenn er auf einem Remote-Desktop ausgeführt wurde.
Hinzufügen
-Dsun.java2d.d3d = false
hat es auch für mich behoben.
Ich habe versucht, ein Docker-Image mit der automatischen Installation von IntelliJ oder Eclipse innerhalb des Containers zu starten, aber ich habe immer ein leeres Inhaltsfenster für Datenschutz, Lizenz und Installation erhalten. Ich habe dies auf einem über RDP-Verbindung angemeldeten CentOS 7-Computer durchgeführt.
Dann habe ich gesehen, dass das lokal installierte Application OpenJdk Privacy Tool das gleiche Problem hat. Es startet, aber es zeigt nicht den Inhalt der App, keine Schaltflächen, keinen Text ... nur einen leeren weißen Bildschirm.
Ich habe über Google gesucht und finde einige Problemumgehungen, die nicht alle helfen.
xhost + initx startx _JAVA_AWT_WM_NONREPARENTING = 1 export DISPLAY = localhost: 10.0 (und verschiedene weitere Lösungen dazu)
Ich habe versucht, Compiz zu installieren und so weiter ... nichts hilft!
Die Lösung:
Bei Verbindung über RDP zur CentOS-Maschine stellen Sie die Farbe max ein. Tiefe zu High Color 16 Bit - nicht mehr (nicht 24 Bit, nicht 32 Bit)! Dann sehen Sie den Inhalt solcher Apps / Programme unter Verwendung von Swing / Awt / Java, was zu Problemen führt!
Verwandte Probleme
-
8
So verhindern Sie, dass die Taskleiste bei der Verwendung von Remote-Desktop schrumpft?
-
3
Warum kann ich über Remote Desktop keine Verbindung zu meinem Windows 7 herstellen?
-
11
Remote Desktop drückt Windows-Taste nach dem Zufallsprinzip
-
5
Was sind die Vor- und Nachteile der Verwendung von virtuellen Desktops?
-
2
Java unter Mac OS X deinstallieren?
-
8
Wie kann ich einen Remote-Desktop von Windows XP in Windows Vista erstellen?
-
3
Zertifikat für die Authentifizierung der Terminaldienste unter Windows Vista
-
2
Remote Desktop verschwindet nach der Anmeldung
-
3
Was bewirkt die Option "Bitmap-Zwischenspeicherung" im Remotedesktopclient?
-
6
Wie kann ich mein ADSL-Modem und meinen Heim-PC für den externen Zugriff konfigurieren?