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


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

【初心者】Java質問・相談スレッド103【大歓迎】



1 名前:デフォルトの名無しさん [2007/06/27(水) 07:23:27 ]
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作板をご利用ください。pc10.2ch.net/hp/

過去ログ、関連スレッド、よくある質問とその回答など、
質問をする前に、貴方が見なければならないサイトについての情報は、
下のwikiのページにまとめてあります。
www.wikiroom.com/java/
これからJavaでプログラミングを始めたいが、何をすればいいかわからない人も、
wikiからのリンクをおたどりください。

よくある質問
・「コマンドまたはファイル名が違います」
 「'javac' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」
 「Exception in thread "main" java.lang.NoClassDefFoundError: 」
 www.wikiroom.com/java/?path,classpath
・String に == は使うな。equals() を使え。
・「\12288 は不正な文字です。」
文字リテラル以外で全角スペースは使えません。半角スペースに。
・その他の質問→「APIのjavadoc見ろ」

前スレッド
【初心者】Java質問・相談スレッド102【大歓迎】
pc11.2ch.net/test/read.cgi/tech/1180419689/

/* 既出の質問や、他に適切なスレが存在する質問は、容赦なく無視されます。
質問をする前にwikiで過去ログ、関連スレ、FAQをチェックしてください。 */
また、当スレで質問をするかたは、回答をもらえたときに、
wikiの更新をして頂ければ、忝なく存じます。

次スレは>>980あたりで。

363 名前:355 mailto:age [2007/07/04(水) 22:48:42 ]
at java.lang.Class.forName(Class.java:242)
at sun.rmi.server.LoaderHandler.loadProxyInterfaces(LoaderHandler.java:707)
at sun.rmi.server.LoaderHandler.loadProxyClass(LoaderHandler.java:651)
at sun.rmi.server.LoaderHandler.loadProxyClass(LoaderHandler.java:588)
at java.rmi.server.RMIClassLoader$2.loadProxyClass(RMIClassLoader.java:628)
at java.rmi.server.RMIClassLoader.loadProxyClass(RMIClassLoader.java:294)
at sun.rmi.server.MarshalInputStream.resolveProxyClass(MarshalInputStream.java:238)
at java.io.ObjectInputStream.readProxyDesc(ObjectInputStream.java:1500)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1463)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1699)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
... 9 more

以上です。解析お願いします。

364 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 22:57:31 ]
なげーよww
java.lang.ClassNotFoundException: example.hello.Hello だ、原因はStackTraceは一番下(元の)例外を読むのが原則
サーバの方でパスが通っている場所にクラスファイルがない

365 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 23:03:22 ]
>>364
調べてみます。。。でもこんな感じなんですよね〜
D:.
│ a.bat
│ コマンド プロンプト.lnk

└─example
└─hello
Client.class
Client.java
Hello.class
Hello.java
Server.class
Server.java


366 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 23:06:09 ]
クラスパスもわかんないやつがRMIって。

367 名前:355 mailto:sage [2007/07/04(水) 23:09:00 ]
>>366
動かしてみてびっくりでしたww

368 名前:355 mailto:sage [2007/07/04(水) 23:19:26 ]
C:\Program Files\Java\jdk1.5.0_12\bin直下に置いたら動いたww

369 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 23:30:08 ]
Caused by: java.lang.ClassNotFoundException: example.hello.Hello
が原因を教えてくれているな。
エラーメッセージには答えそのものが書いてあることが多いからよくよめ

370 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 23:32:09 ]
>>368
まて、bin直下にクラスファイルを置かないと動かないってどういうことだよ!


371 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 23:35:48 ]
>>370
そういうことだよ



372 名前:デフォルトの名無しさん mailto:sage [2007/07/04(水) 23:43:32 ]
>>371
そういうことじゃなくて、rmiregistry.exeを>>365のディレクトリ上に配置すればイイーンダヨ♪


373 名前:デフォルトの名無しさん [2007/07/05(木) 01:35:07 ]
済みません
以下のプログラムをコマンドプロントで実行することは可能ですか?
可能な場合はやり方を教えて頂けないでしょうか。

import java.applet.*;
import java.awt.*;
public class myclock extends Applet{
  Image fb;
  Graphics gg;

  public void init(){
    fb = createImage(200,200);
    gg = fb.getGraphics();
  }

  public void paint(Graphics g){
    /******時計のデザイン*******/
    gg.drawRect(5,5,190,190);
    g.drawImage(fb,0,0,this);
  }
}


374 名前: mailto:sage [2007/07/05(木) 01:38:21 ]
ある文字が英語のアルファベットかしりたいんですが、判別できるメソッドはないですか?
Character.isLetter(char)は日本語の文字にもtrueを返してしまいます。

375 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 01:45:08 ]
>>373
結論いうと可能。アプレットだよね。

ソースファイルに以下のコメント記述でアプレットタグの内容を書く。
/**
<APPLET>内容</APPLET>
*/

コンパイルしたら、appletviewer.exeというjavaの実行フォルダにある
ビューワを使えば読める。

こんな感じ
c:\>appletviewer "ソースファイル名"

ただし、ブラウザと多少動作が違うから確認程度で我慢すること。
詳しくはぐぐれ

こことかどうよ
www.itlb.te.noda.sut.ac.jp/~takuma/lecture/java/step1.html

376 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 01:53:33 ]
>>374
あったようななかったような、、A〜Z、a〜zの範囲なら自作のAPIを作っても手間がそんなにかからないと思うけど。

charset.7jp.net/unicode2.html




377 名前:デフォルトの名無しさん [2007/07/05(木) 01:59:02 ]
>>375
ありがとうございます!

378 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 02:00:24 ]
Cには関数ポインタなるものが存在しますが、Javaにも似たような使い方ができるコーディング方法ございますか?

379 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 02:06:44 ]
そろそろできる

380 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 02:10:14 ]
Methodsクラスをなめるように操作すれば出来なくもない

381 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 02:41:15 ]
とりあえず、高橋麻奈のやさしいJAVAを一冊読んだのですが、
次はなにかを作りながら覚えて言ったほうがいいかなと思ったのですが

なにかいい参考書や方法はあるでしょうか?

みなさんはどういうステップJAVAを学んでいかれたのでしょうか?
よかったら教えてください。



382 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 03:02:31 ]
>>381
資格取ったり仕事で使ったりしたから、いろいろ知ってるけど。
どうでもいいような事とかJavaで出来ること、出来るけど困難なこと、そもそも出来ないこと
の区別が付けることが出来たら、お客さんに気に入られるよってアドバイスする俺はSE兼PGです。
趣味の範囲ならアソシエイツを取る勢いで浅く広く覚えれば面白いと思うよ。深く追求すると嫌になるから。
suned.sun.co.jp/JPN/certification/sjcaobj.html

383 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 09:35:44 ]
お客さんに気に入られてアドバイスしているが
ほとんど無報酬のボランティアで答えている俺は
SE兼PG兼奴隷です。

384 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 10:37:04 ]
JavaってFTPクライアントはカンタンにできると思っていましたが
ソケットで自作しないとだめなんでしょうか?

385 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 10:57:13 ]
標準ライブラリのみなら、そういう認識であってる。
外部のライブラリ使えば簡単にできる。commons netとか
ttp://jakarta.apache.org/commons/net/

386 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 11:37:20 ]
>>378
Java "Script"なら関数オブジェクトを変数に入れて
コールすれば内部処理的にも関数ポインタに近いんだけどなぁ・・・
クロージャが追加されれば似たような事が出来るけど
Javaのクロージャってレキシカルスコープ引き継ぐんだろうか?

>>381
やさしいjavaをきれいさっぱり忘れて他の本をじっくり読む。マジオヌヌメ。


387 名前:デフォルトの名無しさん [2007/07/05(木) 12:03:03 ]
質問させていただきます
htmlで<textarea>に入力した文字をdatファイルに出力しようとしています、正確にはJavaではなくJSPを使っていますが
・Htmlソース部分
<form action="test.jsp"method="POST">
<textarea rows=5 cols=60 name="honbun" wrap="off"></textarea>
<input type="submit"name="save"value="送信">
</form>
・Javaソース部分
String path = "フォルダパス";
String fname = "out.dat";
String gen = request.getParameter("honbun");
String hon = gen.replaceAll("\n","<br>");
BufferedWriter logwrite = new BufferedWriter(new FileWriter(path+ File.separatorChar +fname,true));
logwrite.write(hon);
logwrite.newLine();
logwrite.close();

改行コードを<br>に変換してdatファイルに出力しようとしていますが、<br>は付与されますがどうしても改行コードが残ってしまいます
datファイル内でも改行されないように出力出来ないでしょうか?(例えるなら、ギコナビのスレッドdatファイルの様に)
datファイルを見るのにはTeraPadを使用していますが、メモ帳では改行されていないように見えます
もしかするとTeraPadで見るのが原因なのでしょうか・・・しかしギコナビのdatファイルはTeraPadでも改行されずに表示されます

388 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:10:35 ]
>>387
\rが入ってるとか?

389 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:11:16 ]

LFだけ消して
CRLFを消してないから
CRが残ってる



390 名前:387 [2007/07/05(木) 12:21:08 ]
なるほど、改行コードは\nしか使っていなかったので盲点でした
\rを消して無事に一行で出力することができました
>>388さん>>389さんご回答ありがとうございました!

391 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:04:01 ]
\nはエスケープシーケンスで改行コードは別だよね?
Javaのばあい、動作してるプラットフォームの改行コードに変換されるんじゃなかったけ?



392 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:25:24 ]
1行目も2行目もNo

393 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:28:12 ]
ブラウザから送ってきたものそのままだと思うが、
ブラウザがどういった改行コードを送ってくるかは環境依存?それとも何か決まりはある?

394 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:36:19 ]
MacからはCRで送られてくるし
WindowsからはCRLFで送られてくるし
UNIX系からはLFで送られてくるよ

HTTP以外のSMTPとかのプロトコルだと
ちゃんとCRLFになってるみたいだけどね


395 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:52:38 ]
JTreeでエクスプローラみたいなの作ろうとしてるんだけど
システム上でファイルに関連付けられてるアイコンを
自動的に表示するような方法ってない?

やっぱりひとつひとつアイコン設定するしかない?

396 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:55:19 ]
あるよ

397 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:56:43 ]
UIリソース変えるだけで済まない?

398 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 14:00:00 ]
>>396
そうなんだ!
どうやるの?

399 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 14:56:46 ]
>>398
ファイルに関連づけられてるアイコンって、
OS依存な気がするんだが・・・>>396は何か勘違いしてる気が・・・

400 名前:デフォルトの名無しさん [2007/07/05(木) 14:59:09 ]
違うよ、お前に言ったんじゃないよ

401 名前:デフォルトの名無しさん [2007/07/05(木) 15:00:06 ]
>>399
JTree上のアイコンだろ?



402 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 15:12:33 ]
確かにフォルダの絵とかはUIリソースで変えられると思うが
エクスプローラみたいなのを作りたいってことは、exeファイルのアイコンとか
関連づけられたアプリのアイコンとかにしたいってことなんじゃないの?
>>401

403 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 15:47:41 ]
>>402
そういうことっす

404 名前:デフォルトの名無しさん [2007/07/05(木) 19:04:57 ]
アイコンを用意するところからだな。

405 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 20:49:42 ]
インスタンスの生成と破棄に関するパフォーマンスを調べたいのですが、測定ツールみたいなものはありますか?

406 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 21:03:29 ]
>>403
同じプログラムを Linux へ持っていたらまったく意図した通りに動かない、ということですな・・・


407 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 21:05:44 ]
Write once, Run one platform.


408 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 21:30:39 ]
ファイラはどうやってアイコンとってきてるんだろね
デフォルトはシステムのどっかにアーカイブされてるんだろうが

409 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 21:45:57 ]
explorer.exe とか run32.dll のなかにアイコンリソースがいっぱいあるね

410 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 21:50:05 ]
JDICにそれっぽいAPIがありそうな感じ。
ttps://jdic.dev.java.net/
この辺のAssociationとか使えそうじゃね?
ttps://jdic.dev.java.net/documentation/Examples.html

411 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 22:50:43 ]
https://jdic.dev.java.net/ のしたの方にデモがあるね
javadesktop.org/jdic/demo/FileExplorer/fileexplorer.jnlp




412 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 22:51:45 ]
サーバプログラムでクライアントから入力があれば、文字列を受信して、画面にその文字列を表示してループを抜ける。
また、画面から入力(Enter)があれば、ループを抜けずに、プログラムを強制終了させる。
上記の問題で条件文のことで質問があります。

while(true){
// 省略
if(System.in.available() > 0)
break;
}
「入力があれば」は上記if文でいいのでしょうか?
またEnterキーが入力された場合はどのように条件文を書けばいいのですか?

413 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 22:58:57 ]
jarファイルにしたら外部に別のファイルを出力させることはできませんか?

414 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:01:12 ]
>>411
それだと、ファイルの種類にかかわらずアイコンが全部同じになってるんだよね。
他に方法があるといいんだけど。

415 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:07:24 ]
>>412
まったく意図が通じていないと思うがエスパーしてみる
socket.getInputStream() を使ってバイナリを受信するべし

416 名前:412 mailto:sage [2007/07/05(木) 23:20:24 ]
すいません。
・画面からの入力が「Enterキー」ならプログラム強制終了。
の部分だけを知りたかったんです。
サーバ、クライアントなしでただのプログラムとして考えてください。


417 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:21:27 ]
Javaでなんか作ってるスレない?

418 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:30:01 ]
pc11.2ch.net/test/read.cgi/tech/1179168569/

419 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:33:58 ]
System.inをScannerに放り込んで、nextLine()で終了。
Scanner scanner = new Scanner(System.in);
scanner.nextLine();

420 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:42:01 ]
>>414
たぶんもう見てると思うけど
wisdom.sakura.ne.jp/system/java/swing/swing38.html
の一番下のとか
terai.xrea.jp/Swing/PreviewAccessory.html
とかがあるよね
でも >>395
「やっぱりひとつひとつアイコン設定するしかない? 」
の不満は解消されてないっぽ
シコシコやっても >>406-407 みたいになるのがオチ


421 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:43:41 ]
ネットワークプログラミングの参考書で
お勧めの教えてくらさい

軽くその本の内容も書いてくれると嬉しいです



422 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:49:54 ]
Javaネットワークプログラミングの真髄

423 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 23:57:28 ]
>>422
サンクス
ググってみたが,出版されて日が浅いせいか
全然レビューないな
とりあえず,明日本屋で立ち読みしてみるわ

424 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 00:04:15 ]
>>420
jdicのAssociationServiceのgetFileExtensionAssociationで拡張子指定して
Associationを取得してgetIconFileName()を使うとなんか帰ってくるな。
なんでか「絶対パス,整数」の形式になってる。
数字の意味がわからないが絶対パスの先はアイコンではなく
実行ファイルなのであった・・。

ああ、もしかするとアイコンを使ってるファイルのパスが帰ってくるのか(´д`)


425 名前:デフォルトの名無しさん [2007/07/06(金) 00:04:25 ]
執筆者乙

426 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 00:05:50 ]
>>424
整数はリソースの番号だろ


427 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 00:06:45 ]
>>424
アイコンを使ってるファイルのパスじゃなくて
アイコンを格納しているファイルだろうね

428 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 00:13:18 ]
>>420を見て、Windows L&FにするとJFileChooserに適切なアイコンが表示されることを思い出した。
で、「もしや?」と思って試してみた。
上手くいったぞ。こんなコード。
JFileChooser chooser = new JFileChooser();
FileChooserUI ui = chooser.getUI();
FileView fileView = ui.getFileView(chooser);
JLabel pdfIcon = new JLabel("*.pdf");
Icon pdfIcon = fileView.getIcon(new File("a.pdf"));
pdfLabel.setIcon(pdfIcon);

こんなコードをJTreeのレンダラに仕込めば、
JTreeのノードに対応するすべてのファイルに対して、適切なアイコンが表示される。
もちろん、Windows L&F限定だが。

FileView#getIcon(File)に指定するファイルは、存在しないとFileNotFoundExceptionが発生した。

429 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 00:24:49 ]
>>428
乙。


430 名前:428 mailto:sage [2007/07/06(金) 00:35:40 ]
こんなレンダラでいけたよ。Metalだとみんなアイコン一緒だったけど。

public class FSTreeCellRenderer extends DefaultTreeCellRenderer {
 private FileView fileView;
 public FSTreeCellRenderer(){
  JFileChooser chooser = new JFileChooser();
  fileView = chooser.getUI().getFileView(chooser);
 }
 public Component getTreeCellRendererComponent(JTree tree, Object value, boolean sel, boolean expanded, boolean leaf, int row, boolean hasFocus) {
  DefaultMutableTreeNode node = (DefaultMutableTreeNode) value;
  File file = (File) node.getUserObject();
  Component comp = super.getTreeCellRendererComponent(tree, value, sel, expanded, leaf, row, hasFocus);
  setText(file.getName());
  setIcon(fileView.getIcon(file));
  return comp;
 }
}

431 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 00:43:17 ]
>>428
javax.swing.filechooser.FileSystemView 使えば
Windows では 16x16のアイコンと、ファイルの種類だけは取れる。



432 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 07:27:44 ]
これは覚えておかなくては

433 名前:デフォルトの名無しさん [2007/07/06(金) 09:46:41 ]
質問です。

Eclipseでプログラミングをしているのですが、
log4jとJCOMを外部jarとして追加しています。

この状態でjarファイルとしてプログラムをエクスポートすると、生成されたjarがそのまま実行できません。
CLASSPATHが通ってない・・・みたいなエラーが出ます。

通常のjarみたいにダブルクリックで起動させたいのですが、これはどうすれば解決できるでしょうか?

434 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 10:18:12 ]
>>433
実行可能Jarでググれ。

435 名前:デフォルトの名無しさん [2007/07/06(金) 10:33:12 ]
>434
ググってみたんですけど、
外部Jarを使ったプログラムのエクスポート方法
などが載ってるページが見つかりませんでした。



436 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 10:56:55 ]
「実行可能Jar」でググった1番最初に見つかるが、
お前さんが使ってるGoogleは別物なんだな。
わかった。ズバリ答え。
MANIFEST.MFにこう書け。

Class-Path: log4j.jar jcom.jar

log4j.jarとjcom.jarは、実行するJarファイルと同じフォルダに置くこと。

437 名前:デフォルトの名無しさん [2007/07/06(金) 12:19:50 ]
>>436
ありがとうございます!!
無事に実行することができました。

これで実行jarと同じ階層に3つのjarファイルがあるわけなんですが、
コレを1つのexeファイルにしたいんです。

Fat jarでまとめてexewrapでexeにする・・・というのはできるんでしょうか?

438 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 15:46:00 ]
>>437
そこまで手順が確定しているなら自分でやってみればできるかどうかすぐ分かる。

439 名前:たかひと [2007/07/06(金) 16:49:12 ]
jspからftpサーバにファイルをアップロードするには
どのようにすればいいのでしょうか。
宜しくお願いします。

440 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 17:52:31 ]
launch4j

441 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 18:05:44 ]
log4JってWebアプリに使ってもいいですか?
スレッドとかぶつかっても平気ですか?



442 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 21:19:09 ]
log4jはスレッドセーフじゃないです。残念ながら。
まぁ日付の書式に気をつければ何の問題もないけどね。

443 名前:デフォルトの名無しさん mailto:sage [2007/07/06(金) 21:31:28 ]
UDPだから負荷が重いときはデータ抜けしますよ

444 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 00:53:30 ]
logging.apache.org/log4j/docs/faq.html#1.7
> 1.7 Is log4j thread-safe?
> Yes, log4j is thread-safe. Log4j components are designed to be used in heavily multithreaded systems.

まことに残念

445 名前:デフォルトの名無しさん [2007/07/08(日) 01:42:28 ]
byteとintを論理演算すると、勝手に符号拡張されるので困ってます。
例えば以下のソースで、

------------------------
int i = 0;
byte b = -1;

i = i | b;
------------------------

やりたいことは、iのビットパターンを以下のようにしたいんだけど、
00000000 00000000 00000000 11111111

実際はこうなってしまいます。
11111111 11111111 11111111 11111111

これってどうすれば回避できるんでしたっけ・・・

446 名前:デフォルトの名無しさん [2007/07/08(日) 02:00:34 ]
スレッドに挑戦しようと思い、スレッドを含んだものを作ってみたのですが、コンパイルするときにスレッドの例外というのが発生してしまいます
単純に宣言や拡張が何か足りないだけなのでしょうか…

447 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 02:02:35 ]
コンパイルするときに例外が発生ってどゆこと

448 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 02:04:26 ]
>>445
i = i | (b & 0xFF)

449 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 02:04:33 ]
>>445
0xFF と AND でもとれば

450 名前:445 mailto:sage [2007/07/08(日) 02:10:40 ]
>>448
>>449

ありがとうございます。できました。(; ´д`)

451 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 02:16:37 ]
i = i | (b & (byte)0xFF)



452 名前: mailto:sage [2007/07/08(日) 02:59:39 ]
Eclipseでどんなプログラムでもデバックモードで走らせると、いつも最初にTrueTypeFon.open()262行ででNullPointerExceptionが発生しています。
Eclipse3.21 JDK1.6.0_02、Windows2000SP5です。同じような症状の人いますか? 普通に実行してる分にはNullPointerExceptionは発生しないのですが。


453 名前:452 mailto:sage [2007/07/08(日) 03:01:22 ]
どんなプログラムではありませんでした。Swingをつかうプログラムでした。

454 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 03:04:30 ]
そのぬるぽは君のプログラムからじゃなくてEclipseから発生してるもの?

455 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 04:41:18 ]
exewrapすると中身は見れないんですか?

456 名前:452 mailto:sage [2007/07/08(日) 04:44:03 ]
自分のプログラムからだと思います。でも自分のプログラムが悪いという問題ではないと思います。
GUI(Swing)を使えば必ず出てきます。
階層的にはJFrame#initの呼び出しの果てに
Window#init(GraphicsConfiguration gc)
が呼び出されて、さらにその後もメソッドの呼び出しが続いてTrueTypeFon.open()でヌルポが発生してしまいます。

ただこのヌルポ、デバッグモードで動かさないとわかりません。
Eclipseならデバッグモードじゃなくてもヌルポが発生したらコンソールに知らせてくれるはずなのだと思いますが。

457 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 07:33:33 ]
最低限のソースを


458 名前:452 mailto:sage [2007/07/08(日) 11:06:54 ]
public class Test {

  public static void main(String[] args) {
    JFrame frame = new JFrame();
    frame.setSize(640, 400);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setVisible(true);
  }

}
こんな単純なのでもデバッグモードで起動するとヌルポが出てしまいます。

459 名前:452 mailto:sage [2007/07/08(日) 11:10:08 ]
最初のJFrameのコンストラクタの呼び出しの中でヌルポが発生しています。

460 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 11:31:51 ]
>>452
それでも発生するならばEclipseの実行環境(JRE)の設定でJDK1.6となっているかを確認。
さらに、プロジェクトのプロパティからコンパイルレベルが、6.0になっているかを確認
ダメならば、Eclipseを入れなおしてみる

とりあえず、そんなとこかな?

461 名前:452 mailto:sage [2007/07/08(日) 12:17:34 ]
>>460
どうもありがとうございます。JREの設定でJDK1.6、コンパイルレベルが、6.0、ともになっています。
ちょうどEclipse3.3が出たから、アドバイスどおりEclipseを入れなおしてみます。



462 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 12:23:47 ]
>>461
3.3.1が出るまでは冒険でしょでしょ(=ω=.)

なんかプラグインが衝突しているんかねぇ
大量にプラグインいれた環境とかならば、再インスコがベストだろうな。
VEとかいれているならばかなり怪しい

463 名前:デフォルトの名無しさん [2007/07/08(日) 13:46:20 ]
コンパイルはできているのですが実行したら
Exception in thread "main" java.lang.NoClassDefFoundError:Sample1とエラーが出ます
そこでシステム環境変数のCLASSPATHを削除したら治ったのですがこれは削除してもよかったんでしょうか?






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

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

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