[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 2chのread.cgiへ]
Update time : 02/06 15:43 / Filesize : 197 KB / Number-of Response : 766
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Java低速GUI Swing 5



1 名前:デフォルトの名無しさん mailto:sage [2006/10/18(水) 11:50:09 ]
ハードウェアの高スペック化、JavaVMのホットスポットの高速化に伴い、
パフォーマンスの問題は徐々にですが改善されつつあります。
しかしながら、"Java"というだけで未だに敬遠されるのが現状。
そんなSwingと引き続き付き合っていくみんなのスレッドです。

Java低速GUI Swing 4 (前スレ)
pc8.2ch.net/test/read.cgi/tech/1140533866/
Java低速GUI Swing 3
pc8.2ch.net/test/read.cgi/tech/1121700954/
Java低速GUI Swing 2
pc8.2ch.net/test/read.cgi/tech/1095398949/
Java低速GUI Swing
pc5.2ch.net/test/read.cgi/tech/1062271447/l50

552 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 20:39:46 ]
結構いると思う
5.0からは複数のプロダクトで使われてるのみてる

大手はRSAとかだけど重すぎてきつい

553 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 21:32:39 ]
>>551
うちの奴らはGUIの作成のみに使ってる。他はEclipse使ってるみたいだが。。。

Swing流行らせるためには、まずはNetBeansが機能も知名度もEclipse並に
なってもらわないとだめだね。

554 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 21:40:43 ]
日本だとNetBeansの動きがやや鈍いね
海外は動きが速い

555 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 21:49:24 ]
本屋にくだらないEclipse本があふれてるからねー

海外だとそこらへんの事情も違うのかな・・・

556 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 21:56:01 ]
まずはJREをどう抵抗少なく配布するかじゃないか?
結局ここが一番のネックに感じる。

launch4j に JRE 同梱して、
「exe 叩けばOK」な形で配布すると
割と抵抗なく受け入れてもらえるんだが、
人としてこのファイルサイズはどうなのって感じが。

557 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 22:14:40 ]
gcj使ってるひといる?

558 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 22:22:23 ]
>>556
アプリとして有用であればランタイムが大きくても気にしない

のが正解かと

559 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 22:49:47 ]
>>556
Consumer JREがどうなるか気になるね。
軽量化してくれればJRE同梱も納得できるサイズになるかも。

560 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 22:56:28 ]
>>558
Delphiも結構デカくなってたしなあ・・・。



561 名前:529 mailto:sage [2007/06/26(火) 23:16:16 ]
Mac板から帰ってきました。
NFCとNFDについて勉強してきたんで、なんでこんなことになるか
理解できました。
ファイル名を扱うツールを作ってるんですが、ファイル名を取得して
テキストエリアに表示するサンプルを作って試したら問題が再現しました。
以下、サンプルコードです。


562 名前:529 mailto:sage [2007/06/26(火) 23:16:56 ]
package test;

import java.io.File;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;

public class DakuonTest {
public static void main(String[] args) {
try {
JFrame frame = new JFrame();
JTextArea text = new JTextArea();
frame.getContentPane().add(new JScrollPane(text));

File[] files = new File(args[0]).listFiles();
for(int i=0; i<files.length; i++) {
text.append(files[i].getName() + "\n");
}

frame.pack();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
}


563 名前:529 mailto:sage [2007/06/26(火) 23:22:03 ]
第一引数のパスのディレクトリのファイル一覧を取得し、
1行に1ファイル、テキストエリアに表示しています。
「ピクチャ.png」があった場合、
Java 5の場合、ピは1文字で表示されますが、カーソルはずれてます。
Java 6の場合、ヒ゜と表示されます。


564 名前:529 mailto:sage [2007/06/26(火) 23:34:10 ]
ついでですが、濁点の入る文字が三つ以上続くファイル名でJava6の場合、
濁点がずれて表示されます。
「ががが.txt」
の場合、
「か゛かか゛゛.txt」
と見えます。
Appleのバグレポートにあげようかと思ったんですが、こんなもんどうやって
英語で説明したものか・・・

565 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 23:35:58 ]
>>563
>>536 が言ってるフォントレンダラの問題なんじゃないかと推測。

1.5 -> Quartz という Mac 本来のエンジン使ってるので、NFD でも 一文字として表示する、
    けど Java と Quartz の連携が中途半端で文字の大きさとかの情報が渡ってなくって
    カーソル位置がずれる。

1.6 -> Sun のエンジンは NFD は 別々の文字として表示する。

あくまで推測だから本当のところはわからんけど。

566 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 23:40:06 ]
1.5までは合成文字未対応だから、1.6でjava.text.Normalizerを
通すのがまっとうな解決法だろうなぁ。


567 名前:566 mailto:sage [2007/06/26(火) 23:41:05 ]
いや、比較する訳じゃないし、これはあくまで描画上の問題ですね……


568 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 23:56:10 ]
比較する訳じゃないのに、Normalizeされた文字列を
表示しようとするのが間違い。
MacのFSのUTF-8はNormalizeされてるので、取ってきた後
deNormalizeしてから表示するべき、ってことなのかなー。

569 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 00:00:03 ]
macオワタ


570 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 00:03:58 ]
macは知らんがレンダラのフォントの扱いの問題?
appleこういうの多いよね。



571 名前:529 mailto:sage [2007/06/27(水) 00:29:08 ]
とりあえずAppleに「直せや」ってねじ込んで、駄目なら568さんの方法で
自分のコードを改修しようと思います。
その場合Java5については諦めるしかなさそうですね。

ついでなんでさらにMacのSwingについてぼやきます。
日本語キーボードを使っていると、KeyEventのgetKeyChar()とgetKeyCode()の
戻り値が矛盾します。
英語と日本語キーボードで配置が変わらない数字やアルファベットのキーなら
問題ないですが、記号だとgetKeyCode()の値がおかしいです。
たとえば@キーの場合、getKeyChar()は'@'を返しますが、
getKeyCode()はKeyEvent.VK_OPEN_BRACKET(0x5B)を返しました。
キー操作の多いアプリで、キーコードとアクションを関連づけてるんで
しゃれになりません。
バグレポートは投げておきましたが、なんでこんな基本的なバグが
何年も放置されてるんだと・・・


572 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 01:52:29 ]
おんなじ現象で困ってる人
ttp://www.starseed.ne.jp/ikemen/diary/tdiary/?date=20070622#p02

573 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 02:08:00 ]
mac版はアップルが実装してるからなぁ・・・
VMが昔はたくさんあったが今は淘汰されてSunのばかりになったことも移植性があがった原因なんだよな
しかしLinuxとWindowsは問題ないというのが歯がゆい

574 名前:デフォルトの名無しさん [2007/06/27(水) 08:54:46 ]
VEでjspinnerって入力できるの?

575 名前:529 [2007/06/27(水) 09:21:07 ]
>>572
すんません、それ僕です。



576 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 09:37:18 ]
>>574
Choose Beanすれば何でも可

577 名前:574 [2007/06/27(水) 09:43:30 ]
>>576
なるほど、ありがとうございます。

578 名前:574. [2007/06/27(水) 09:56:55 ]
連続質問すいません。
JSpinnerで入力した値を取得したらNullPointExceptionが出てきて困っています。
JSpinnerは
JSpinner SP_Date = new JSpinner(new SpinnerDateModel(new Date(), null, null, Calendar.DAY_OF_MONTH ));
SP_Date.setBounds(new Rectangle(147, 191, 113, 21));
SP_Date.setUI(new BasicSpinnerUI());
SP_Date.setModel(new SpinnerDateModel());

という感じで作成し、

String TestDate = SP_PurchaseDate.getValue().toString();
で取得しようとしているのですが…

579 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 10:03:28 ]
setBounds・・・ゴクリ

580 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 12:43:57 ]
>>578
JSpinnerの使い方間違ってね?
・JSpinnerのコンストラクタにSpinnerModel指定したのなら、setModel()は不要
・SpinnerDateModel使うのなら、モデルに対してgetDate()すればDate型で値もらえる

それと、変数名は小文字で始めようぜ。Javaの流儀だ。



581 名前:529 mailto:sage [2007/06/27(水) 22:24:31 ]
もはやSwingと関係ないんですが、MacのJavaでかなり衝撃の事実が
発覚したんで書きます。

new File("ががが.txt").createNewFile();

で作られるファイル名が「か゛かか゛゛.txt」になります。
あと、564に書いたことは間違っていて、
「ががが.txt」が「か゛かか゛゛.txt」と見えるのではなく、
Javaで「ががが.txt」を作ると「か゛かか゛゛.txt」が出来る、という話でした。
ひどすぎる・・・

Java6の場合、

new File(Normalizer.normalize("ががが.txt", Normalizer.Form.NFD)).createNewFile();

と書くと正しいファイルが作れましたが、多分Java5だと
どうしようもないんじゃないでしょうか。

スレと関係なくてすみません。

582 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 23:16:12 ]
普通に日本語使っただけでNormalizerが必要ってのもおわっとるな
Mac対応はやめよう
LinuxとWindows、Solarisだけでいいや


583 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 23:25:53 ]
>>581
変な挙動だね……

ががががが.txt みたいに「が」の個数増やすと、どーなるんだろとか
がぎぐげご.txt みたいに濁点は付いてるけど別の字の場合とか
興味があったり

584 名前:デフォルトの名無しさん mailto:sage [2007/06/27(水) 23:28:15 ]
macオワタ\(^o^)/


585 名前:529 mailto:sage [2007/06/27(水) 23:42:19 ]
>>583
実験してみました。

がががが.txt -> ががかが?.txt
ががががが.txt -> ががかかが??.txt
がががががが.txt -> がががかかが??.txt
がぎぐげご.txt -> がぎくけご??.txt
がぱが.txt -> がはか??.txt(最後の「か」に半濁点付いた後に濁点があります)
がぱがぱ.txt -> がぱかば?.txt(最後のばの後に半濁点が付いてます)

なんか頭痛くなってきました・・・

586 名前:529 mailto:sage [2007/06/27(水) 23:44:53 ]
すんません、コピペじゃ駄目みたいなんで書き直します。

がががが.txt -> ががかが゛.txt
ががががが.txt -> ががかかが゛゛.txt
がががががが.txt -> がががかかが゛゛.txt
がぎぐげご.txt -> がぎくけご゛゛.txt
がぱが.txt -> がはか゜゛.txt(最後の「か」に半濁点付いた後に濁点があります)
がぱがぱ.txt -> がぱかば゜.txt(最後のばの後に半濁点が付いてます)

587 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 05:20:04 ]
>>586
ソースの文字コードだけど何使ってる?
コンパイルする時に、-encodingオプション指定すればよくなくね?
WinのコードとMacのコードは違うしそこらへんの問題じゃなくて?

588 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 09:37:16 ]
String s = "\u304c\u304c\u304c\u002e\u0074\u0078\u0074";
System.out.println(s);
new java.io.File(s).createNewFile();
をwinのJDK5でコンパイルして、バイトコードをmacに持っていってJDK5環境で実行すると、
println表示は「ががが.txt」だけど、作成されたファイル名は「がかが゛.txt」になるね。
macはサブで、あまり本格的にjavaでいろいろやったりしてなかったんで、
macのjava実装がこんなもんだということにちょっとびっくり。

589 名前:574. mailto:sage [2007/06/28(木) 09:50:31 ]
>>580
ありがとうございます。
getDate()ですね。

あと、変数名おかしいのも指摘していただいてありがとうございます。

またひとつ質問があるのですが、
JSPinnerで 日付のみを表示することって可能でしょうか?

2007/06/28 00:00:00 という表示を
2007/06/28 という表示にしたいのですが…


590 名前:588 mailto:sage [2007/06/28(木) 10:22:52 ]
分解後のリテラル"\u304b\u3099\u304b\u3099\u304b\u3099\u002e\u0074\u0078\u0074"だと、
ファイルとして「ががが.txt」が生成されるけど、逆にwin環境では化けファイル名になる。
もしかしてmacでNormalizerを使って正しいファイル名を生成できたとしても、
それをwinに持ってきて正しいファイル名にはならない?
うちはJDK5環境のままなんでNormalizer周りを確認できないけど。



591 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 10:38:04 ]
>>590
> 逆にwin環境では化けファイル名になる
NFD使われた程度で化けるならWin側にも問題はあると思うけどね。
NFCが正しいユニコードってわけじゃないし。

まぁ、>>586 のはバグだろうけど。

592 名前:588 mailto:sage [2007/06/28(木) 10:46:23 ]
>>589
JSpinner#setEditorを使って、
setEditor(new JSpinner.DateEditor(sp, "yyyy/MM/dd"))

593 名前:デフォルトの名無しさん mailto:sage [2007/06/28(木) 10:49:40 ]
名前欄が……orz

594 名前:589 [2007/06/29(金) 00:15:08 ]
>>592
ありがとうございます。できました。
でも次はデータを取得したらなぜかぬるぽになる・・・

sp.getValue().toString() とかやってみたのですが…


595 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 00:36:31 ]
commitEdit しないと値が確定しないからぬるぽなんじゃね?

596 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 00:37:53 ]
ソースさらさんとわからん

597 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 00:40:59 ]
>>594
spがnullなのかsp.getValue()がnullなのか。
データ取得のタイミングが早過ぎてスピナがまだ構築されていないとか。
試しにこういうのを作ったけど普通に取得できたよ。
JFrame f = new JFrame();
f.setLayout(new java.awt.FlowLayout());
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
final JSpinner sp = new JSpinner(new SpinnerDateModel(new Date(), null, null, Calendar.DAY_OF_MONTH ));
sp.setEditor(new JSpinner.DateEditor(sp, "yyyy/MM/dd"));
sp.setUI(new javax.swing.plaf.basic.BasicSpinnerUI());
f.add(sp);
JButton b = new JButton("A");
b.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println(sp.getValue());
}
});
f.add(b);
f.pack();
f.setVisible(true);

598 名前:594 [2007/06/29(金) 00:47:44 ]
>>595
>>596
ありがとうございます(涙

>>597
うわマジありがとうございます(号泣
さっそくやってみます!!

599 名前:529 mailto:sage [2007/06/30(土) 10:08:36 ]
遅レスですが。

>>587
ソースはShift_JISですが、.classファイル中では変換されちゃってNFCなUTF-8の
コードで記録されてるんで関係無いっぽいですね。
MacのファイルシステムはNFDでファイル名持ってるけどNFCのファイル名渡されると
NFDに変換するみたいなんですが、Java VMのそこら辺の実装にバグがあるっぽいです。

>>591
Windowsは最初っからNFCのファイル名のみを渡されるのが前提で、
NFDのファイル名をNFCに変換する機能とかが無く、NFDの濁点のフォントを持ってないんで
化けるみたいです。
まあ、仕方ないかと。

Appleに報告したら1日で返事が来て追加情報を求められました。
さすがにやばいと思ったんでしょうか。

あと、無理矢理Swingに話を戻すと、JTextComponentはNFCみたいなんで、
自分のアプリではファイル名はNFCで扱い、java.io.Fileを生成するときだけ
MacではNFDに変換するようにしました。

600 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 14:12:28 ]
クラスファイル内のエンコーディングはUTF-8だったのか



601 名前:デフォルトの名無しさん mailto:sage [2007/06/30(土) 15:56:39 ]
>>600
だからsunのJDKの実装ではReaderのデフォエンコーディングがUTF-8なんだったはず。

602 名前:デフォルトの名無しさん [2007/07/02(月) 17:46:19 ]
JFrameから他のJFrameのボタンを押すことって可能でしょうか?

今AとBという画面を作って、Bに検索窓を作って、クリックした内容がAウィンドウのテキストフィールドに反映するように
しているのですが、そこからさらにBウィンドウの「確定」ボタンを押すと、Aウインドウでも「確定」ボタンを押したのと同じ状況にしたいのですが…


603 名前:デフォルトの名無しさん mailto:sage [2007/07/02(月) 18:07:29 ]
普通にそのロジックが入ったメソッドを呼べばいいだけでは?
イベントの中ではそのメソッドを呼ぶようにするだけ

Swingの中で押したように動作させるという意味ならそのまま命令があるけど、APIマニュアルをよく見てみよう

604 名前:594 mailto:sage [2007/07/03(火) 11:12:10 ]
>>597


すいません、spがnullになってしまいます。。。
EclipseでgetJContentPane()に自前で以下のコードを追加したのですが…

  JSpinner sp = new JSpinner(new SpinnerDateModel());
sp.setUI(new BasicSpinnerUI());
sp.setEditor(new JSpinner.DateEditor(SP_checkDate, "yyyy/MM/dd")) ;
jContentPane.add(sp);

そして、ボタンを押したときのコードはこれです。

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
Date spData = sdf.parse(SP_checkDate.getValue().toString());

なぜかspがnullになっています。。。 



605 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 12:28:07 ]
>>604
Swingの前にJavaの勉強した方がいいぞ。
>>597のコードを、お前のコードにそのまま埋め込んでもダメ。
意味を理解しろ。
JSpinner.DateEditorのコンストラクタの引数は、
setEditorを呼び出すJSpinnerオブジェクトを指定する。
>>604では、JSpinner.DateEditorのコンストラクタで指定したJSpinnerと
setEditorを呼ぶJSpinnerが異なっている。

それと、以前のアドバイスをまるで無視してるな。ちゃんと読んでるか?
SpinnerDateModel#getDate()でDate型で取得できると言われたのに
無駄にSimpleDateFormat使ってDate→String→Date変換してるし、
変数名があいかわらず変だったりするし。

606 名前:594 [2007/07/03(火) 13:46:28 ]
>>604
変数名の修正が中途半端になっていました・・・すいません。
Date型で取得せずにStringで取得してたりダメダメなので、もう一度出直します…


607 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 14:57:06 ]
>>594 がんがれ

608 名前:デフォルトの名無しさん [2007/07/03(火) 17:16:40 ]
VisualEditorでのデフォルトのフォントって変更できますか?
いつも太字のDialog,12を手動でぽちぽち変更しているのですが…


609 名前:デフォルトの名無しさん mailto:sage [2007/07/03(火) 18:35:49 ]
実行時だけ素敵になれば良いのであれば
>>483 辺りを参照するヨロシ。

610 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 01:14:58 ]
commonsのsmtp関連って使っているひといますか?
使おうと思ったけどエンコード思うようにいかなくて
javax.mailの方に手を出したら結局そっちだけで用が済んでしまい
わざわざcommons使うまでもなかったっていうか・・・





611 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 01:15:44 ]
誤爆しますたスマソ

612 名前:594 [2007/07/04(水) 12:11:32 ]
やっと取得できるようになりまいた!!
DataModelが必要だったのですね… ちゃんと読んでなくてすいません。ありがとうございます!

613 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 12:12:23 ]
>>609

やっぱりVE上でもヨロシくしたかったのですが…
VE以外のGUIエディタなら可能?

614 名前:デフォルトの名無しさん [2007/07/04(水) 16:25:33 ]
eclipse+swingでGUIをふんふんふん〜って作っていて、
いざエクスポートして、問題なく起動でしたと思ったら、
なぜかDBとの通信に失敗している。

エラー内容をみるとjava.lang.NullPointerException

開発時には普通に実行できたのに、
jarにエクスポートしたらDBと通信できなくなる場合ってあるのでしょうか?
JDBCはちゃんとclasspathがあるとこに置いてます

615 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 17:09:10 ]
だからその例外が発生している場所をさらさんとダメだとなんど・・・

616 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 17:25:13 ]
>>614
Swingというかスレ違いな気がするが、一応回答。
実行可能jarから起動すると、CLASSPATHや-classpathオプションは無視される。
代わりにMANIFEST.MFのClass-Pathエントリに書くこと。

これ以上の助言が欲しかったら、その例外の発生箇所を加えて
Java質問・相談スレに行け。

617 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 17:31:57 ]
>>616
無視されないよ
なにわけのわからんことを・・・

618 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 17:51:03 ]
>jarにエクスポートしたらDBと通信できなくなる場合ってあるのでしょうか?

ある


619 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 18:18:05 ]
クラスが見つからなかったらふつうは、NoClassDefFoundだろ・・・
>>614
eclipse使ってるなら、jarファイルをデバッガ経由で起動してみたら?

620 名前:614 mailto:sage [2007/07/04(水) 18:56:44 ]
>>616

いけましたよ!! ギガントありがとう!!



621 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 21:33:41 ]
>>617
ttp://java.sun.com/javase/ja/6/docs/ja/technotes/tools/windows/java.html#-jar
ドキュメントを読む習慣を付けようぜ。

622 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 21:49:10 ]
-jar使うのかよ

普通は使わんし、使うならマニフェストファイルに書くの普通だろ
Swingと何も関係ないやんか

623 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 22:00:11 ]
スレ違いではあるが
>>622
とことん読まないね。
ttp://java.sun.com/javase/ja/6/docs/ja/technotes/guides/jar/jarGuide.html
>デスクトップ上で JAR ファイルをダブルクリックすれば javaw -jar により JAR ファイルが自動的に実行されます。

624 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 22:04:36 ]
ダブルクリック起動なんて使い物にならんよ
オプション設定できないから

625 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 00:43:07 ]
Windows Explorerを否定する617=622=624に脱帽

626 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 00:54:08 ]
最近のGUIシェルならむしろダブルクリックで
関連付けされたプログラム実行の方が一般的だろ。
自分を正当化してかみつきたいだけの馬鹿はスルーしとけよ。

627 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 11:41:18 ]
>>624
lauch4j

628 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:00:32 ]
> 625-626は624のいいたいことわかってるのかな

629 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:08:40 ]
そのソフトがGUIなら起動後にオプション設定して再起動が今じゃ普通だが
それを回避するためにコマンドライン引数受け付けるのもあるけど、あくまでも救済処置だろ。
今となっては。

630 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:27:57 ]
>629は、わけがわかってないと見た。



631 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:43:14 ]
>>629
たぶんアプリケーションのオプションではなくJVMオプションの類の話をしてると思われる

632 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 14:47:03 ]
関連付けでオプションも設定しておけばいいんじゃね?

633 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 14:53:28 ]
起動するときにアプリにオプションを渡さないといけないのはCUIでGUIではあまりないと思うが

634 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 14:57:18 ]
JavaのVMは別

635 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 15:07:49 ]
オプションといってもVMのオプションね。
システムプロパティを指定する-Dや、
VMの種類を選択する-clientや-serverとか、
メモリ割当プールの最大最小サイズを指定する-Xmxや-Xmsなど。
今のところ、実行可能Jarをダブルクリックでは、
これを個別指定することはできない。

まあただ、-clientや-serverはCPUやアーキテクチャによって
自動選択されるし(おおよそではあるけど)
-Xmxと-Xmsも、Java6からは規定値が64MB/2MBではなくなり、
物理メモリに応じた値に変わるようになった。
ttp://java.sun.com/javase/ja/6/docs/ja/technotes/guides/vm/gc-ergonomics.html

-Dやその他のVMオプションは無理としても、
実行可能Jarの手軽さを全否定するほど、使えないってことは無いと思う。

636 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 20:26:11 ]
GUIアプリほどオプションが必要。
SwingやJavaの動作が速くなったとはいえ、デフォではGCによる停止時間が長すぎるので
使い物にならないのさ。

あくまでも快適に動くアプリはチューニングされたオプションが前提。
マニフェストファイルにオプションがかけないのでここは厳しいんだよな。
WebStartもメモリだけしか対応してないので厳しい。

普通の人は2,3秒もGCでGUIがとまってたら使わないと思う。

637 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 20:28:14 ]
>>635
6では単純なサーバークラス検出動作からかわったの?

638 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 21:28:25 ]
わかった。
VMのチューニングしないとまともに動かないような、リッチでヘビーなGUIアプリはお前に任せる。
俺は、VMのチューニングが不要な、チープでライトなアプリ作って、実行可能jarで配布するよ。

ところでV2C使ってると、クライアントサイドJava & Swingもいいもんだと思えてくる。
もっとも、あれは作者さんのがんばりに寄るところが大きいのかな。
HTMLビューアは自作してるそうだし。

639 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 22:25:02 ]
V2CだってデフォだとGC時にあほみたいに重くてつかえんだろ・・・

640 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 22:46:47 ]
GCが一瞬で終わるウチの環境はハッピーなんだな。
ガンガレ639。お前には未来とVMチューニングがある。



641 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 02:48:48 ]
デフォでGCで2,3秒とまるって、どんなアプリをどんな環境で使ってるんだろう?
Swingで最重量級といえるNetBeansでも、そんなに止まることはないが。

642 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 07:00:10 ]
とりあえずOSはWindows 98だろうな。

643 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 20:16:52 ]
IntelCore+XPでNetBeans5.5.1も2,3秒とまるよ
コンカレントGCに変更すれば大丈夫だけど


644 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 21:46:12 ]
メモリがバカみたいに少ないんだろうか

645 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 22:02:26 ]
メモリは1.5GBだーね
glassfish立ち上げたりDB立ち上げると1GBじゃたりないよね

NetBeansはデフォだとまったくメモリが足りないから増やしてるさ

もしかしてみんなヘビーにNetBeansつかってないの?

646 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 23:37:13 ]
ヘビーに使ってるよ。最近2GBじゃ足りない。

いや、コンカレントにするより、分散GCの周期を1分から延ばすのと
スループット並列GCにする方が快適だったりするかもしれないぞ。

でもIDEのVMとアプリケーションサーバのJVMは分けるよ。
違う性質のアプリなんだから分けた方がチューニングしやすい。
って何の話になってるんだ。

V2Cは、多分に作者さんのコーディングの腕で快適になってるんだと思う。

647 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 23:54:15 ]
>>646
遅いのはFullGCだけだからFullGCがでなければそれでいいのさ

GCチューニングはJavaでゲーム作ったりしてテストしてるから大丈夫
5ms以下にしていれば体感的に問題はないかな

メモリが多いとパラレルがわりと有効だけど、パラレルにするとスループットはいいけど、
レスポンスが大幅に低下するから、使う場面が結構難しい

マルチコアだからパラレルでいいというよりはGC用にずっとコンカレントだけ動かしてるほうが
いい場合も多いかな
まぁ、バックグラウンドコンパイルとかもあるし、AP鯖やDB鯖も起動するからIDEだけにフルにまわすわけには行かないからね

最近はVM系もよく使うからなおさらかな

ところでAP鯖とIDE、デバッグ起動とそれぞれVMは自動的に分かれるよね?
Tomcatだってデフォだとメモリ少ないし-Xmxいれないとまずうごかん

あーSwingがもはや関係なくなってしまった

648 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 11:24:32 ]
>645
glassfishとJavaDBはNetBeansと違うVMで走るよ。

649 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 12:59:29 ]
>>648
何を当たり前のことを

650 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 15:41:58 ]
glassfish走らせようがJavaDB走らせようが、GCには関係ないってことだ。



651 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 16:00:02 ]
>>650
マルチプロセスでの動作を考慮ってことだろ。

652 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 19:59:56 ]
とりあえずSwing関係ねーから他所行けや






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<197KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef