質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

2回答

783閲覧

java Swing ubuntu デスクトップアプリ

javatest

総合スコア5

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2022/09/02 03:31

編集2022/10/15 07:34

前提

ここに質問の内容を詳しく書いてください。
(例)
ubuntu 20.04 デスクトプ版 java openjdk 17.0.4 2022-07-19
ubuntuの状態 設定->このシステムについて->ウィンドウシステムは、X11と表示されています。

環境変数 export DISPLAY=:0.0 export LIBGL_ALWAYS_INDIRECT=1 /etc/ssh/sshd_config X11Forwarding yes X11DisplayOffset 0 PrintMotd no PrintLastLog yes TCPKeepAlive yes なども変更してみました。

開発は、Windows vs codeを使用してclassまで作成して、ubuntuで,jarを作成しています。

1 Windows vs codeで、動作します。
2 jarを作成してWindows上で、動作します。

対処法をご存じの方宜しくお願いします。

TypeScriptで●●なシステムを作っています。
■■な機能を実装中に以下のエラーメッセージが発生しました。

 Can't connect to X11 window server using '127.0.0.53:0.0' as the value of the DISPLAY variable.

実現したいこと

ここに実現したいことを箇条書きで書いてください。

  • ▲▲機能を動作するようにする

ubuntu 20.04上で、java swingで作成した。デスクトップアプリを動作させたい。

発生している問題・エラーメッセージ

java Swingで作成したアプリが起動しません。

エラーメッセージ

 Can't connect to X11 window server using '127.0.0.53:0.0' as the value of the DISPLAY variable.

該当のソースコード

java Swing ソースコード

public static void main(String args[]){
Zipkaitou frame = new Zipkaitou("ZIPファイル解凍");
frame.setVisible(true);
// frame.setSize(1090, 400);
}

Zipkaitou(String title){
setTitle(title);
setBounds(100, 100, 800, 140);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

試したこと

startxを試したところ、そもそもx-windowが上手くうごいていない様に思えます。
何か設定がありますか?

root@Linux-TPC:~# startx

X.Org X Server 1.21.1.3
X Protocol Version 11, Revision 0
Current Operating System: Linux Linux-TPC 5.15.0-50-generic #56-Ubuntu SMP Tue Sep 20 13:23:26 UTC 2022 x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.15.0-50-generic root=UUID=2f16dce9-f576-4e50-83fe-93a245c4d0c9 ro find_preseed=/preseed.cfg auto noprompt priority=critical locale=en_US quiet splash
xorg-server 2:21.1.3-2ubuntu2.1 (For technical support please see http://www.ubuntu.com/support)
Current version of pixman: 0.40.0
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.1.log", Time: Sat Oct 15 16:15:17 2022
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
xinit: connection to X server lost

waiting for X server to shut down (II) Server terminated successfully (0). Closing log file.
ログファイル
GNU nano 6.2 /var/log/Xorg.1.log
[ 3889.962]
X.Org X Server 1.21.1.3
X Protocol Version 11, Revision 0
[ 3889.962] Current Operating System: Linux Linux-TPC 5.15.0-50-generic #56-Ub>
[ 3889.963] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-5.15.0-50-generic ro>
[ 3889.963] xorg-server 2:21.1.3-2ubuntu2.1 (For technical support please see >
[ 3889.963] Current version of pixman: 0.40.0
[ 3889.963] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 3889.963] Markers: (--) probed, () from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 3889.963] (==) Log file: "/var/log/Xorg.1.log", Time: Sat Oct 15 16:15:17 20>
[ 3889.964] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 3889.966] (==) No Layout section. Using the first Screen section.
[ 3889.966] (==) No screen section available. Using defaults.
[ 3889.966] (
) |-->Screen "Default Screen Section" (0)
[ 3889.966] (**) | |-->Monitor "<default monitor>"
[ 3889.967] (==) No monitor specified for screen "Default Screen Section".
Using a default monitor configuration.
[ 3889.967] (==) Automatically adding devices
[ 3889.967] (==) Automatically enabling devices
[ 3889.967] (==) Automatically adding GPU devices
[ 3889.967] (==) Automatically binding GPU devices
[ 3889.967] (==) Max clients allowed: 256, resource mask: 0x1fffff
[ 3889.967] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[ 3889.967] Entry deleted from font path.
[ 3889.967] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[ 3889.967] Entry deleted from font path.
[ 3889.967] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[ 3889.967] Entry deleted from font path.
[ 3889.967] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[ 3889.967] Entry deleted from font path.
[ 3889.967] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[ 3889.967] Entry deleted from font path.

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2022/09/02 03:33

どのようなアプリをどのように作ってどのようにビルドしてどのように実行しようとしているのでしょうか。
javatest

2022/09/02 03:59

javaのjavax.swingを使用して、uubntuで動作するアプリを作成しようとしています。 起動前にエラーになります。 頭の部分を記載します。 public static void main(String args[]){ Zipkaitou frame = new Zipkaitou("ZIPファイル解凍"); frame.setVisible(true); // frame.setSize(1090, 400); } Zipkaitou(String title){ setTitle(title); setBounds(100, 100, 800, 140); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//閉じるボタンがクリックされた時にアプリケーションを終了するように設定する
m.ts10806

2022/09/02 04:01

質問は編集できますので、適宜修正してください。コードはMarkdown使ってくださいね。
javatest

2022/09/02 04:01

開発は、Windows vs codeを使用してclassまで作成して、ubuntuで,jarを作成しています。
int32_t

2022/09/02 04:30

Ubuntu で X server は動いていますか。 Javaのコード内容は関係ないと思います。たとえば xeyes などを同じ条件で起動しても同じエラーになると思います。
m.ts10806

2022/09/02 04:32

実行手順が書いてない・・・。どこでどのように実行したのか。 コマンドならそのコマンドそのもの。それを「どこでどう」実行したのか。 コード内容は直接は関係ないかもしれませんが、先に書いたようにコードはMarkdownにしてほしい。
jimbe

2022/09/02 04:41 編集

質問のタグに swing や ubuntu を含めた方が良いと思います。 また、タイトルには内容を示す短文を書いてください。
shiketa

2022/09/02 05:00

> uubntuで動作するアプリを... もしかして、WSL2環境にインストールしたubuntuのことですかね。フツーにインストールしただけではGUI(X Window)環境は存在しないのではないかと。SwingはGUIアプリケーションなのでGUI環境は必須。X Window環境を構築してみてはいかがかと。わたしゃ試したことありませんが、たとえば、 https://uepon.hatenadiary.com/entry/2021/09/16/024450
javatest

2022/09/02 05:31

PCに単独で、ubuntu(日本語デスクトップ版)をインストールして、起動しているので、X Windows Systemは、入っていると思います。
m.ts10806

2022/09/02 05:36

細かいところで申し訳ない >java Swing ubuntu タイトルに並べられている単語はすべて質問タグにあるはずなので、質問タグにかえてください。 そのかわりタイトルは要件を記載してください。何をしたいのか、何を解決したいのか、何が問題なのか >PCに単独で、ubuntu(日本語デスクトップ版)をインストールして、起動しているので、X Windows Systemは、入っていると思います。 可能な範囲で画面キャプチャなど提示されたほうが良いと思います。 文字だけのやり取りだと確実なイメージは伝わらないので。
int32_t

2022/09/02 06:39

> '127.0.0.53:0.0' 127.0.0.53 は奇妙ですね。/etc/hosts を変にいじったりしました?
javatest

2022/09/02 06:55

いいえ、インストールのままです。
guest

回答2

0

自己解決

su でrootに変更してから、行っていました。ログインユーザーのままで出来ました。

投稿2022/10/23 23:26

javatest

総合スコア5

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

解決策ではありません。参考程度にどうぞ。


Ubuntuではなく、Debian環境ですが、Ubuntuのベースということで。

$ uname -a Linux hoge 4.19.0-21-amd64 #1 SMP Debian 4.19.249-2 (2022-06-30) x86_64 GNU/Linux

環境変数。

$ echo $DISPLAY :0 $ echo $LIBGL_ALWAYS_INDIRECT
$ java -version java version "17.0.4.1" 2022-08-18 LTS Java(TM) SE Runtime Environment (build 17.0.4.1+1-LTS-2) Java HotSpot(TM) 64-Bit Server VM (build 17.0.4.1+1-LTS-2, mixed mode, sharing) $ javac HelloWorldSwing.java $ java HelloWorldSwing

これで起動できた。

$ cat man.txt Manifest-Version: 1.0 Class-Path: . Main-Class: HelloWorldSwing Main: HelloWorldSwing $ jar cfm hoge.jar man.txt HelloWorldSwing.class $ java -jar hoge.jar

これでも起動できた。


/etc/ssh/sshd_config

についての言及がありましたが、sshは関係ないんじゃないですかね。

ためしにsshでログインして試してみた。

$ ssh xxx@localhost $ java -jar hoge.jar Exception in thread "AWT-EventQueue-0" java.awt.HeadlessException: No X11 DISPLAY variable was set, but this program performed an operation which requires it. at java.desktop/java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:166)

ま、そりゃそうですね。X11環境ありませんので。
でわ、そのまま環境変数 DISPLAY を設定してみる。

$ export DISPLAY=:0.0 $ java -jar hoge.jar

ちゃんと起動できる。

投稿2022/09/05 12:12

編集2022/09/05 12:13
shiketa

総合スコア3971

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

javatest

2022/09/07 06:31 編集

回答ありがとうございます。 ubuntuで、試しましたが、動作しませんでした。
shiketa

2022/09/07 09:08

動かん動かんだけでは、ああそうですか以外の反応はできませんね、だれも。javaコマンド実行時のエラーメッセージを漏れなく提示されてみてはいかかがでしょうか。ついでに環境変数DISPLAYも。
javatest

2022/10/23 23:25

一応解決しました。 su でrootに変更してから、行っていました。ログインユーザーのままで出来ました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問