1 名前:デフォルトの名無しさん mailto:sageteoff [2016/03/15(火) 18:14:06.66 ID:9bB8/RTg.net] プログラミング言語Javaに関する質問スレです。 JavaScript, Ajaxの質問は、ここでは受け付けていません。 Web製作管理 pc11.2ch.net/hp/ Webプログラミング pc11.2ch.net/php/ をご利用下さい。 よくある質問 ・「コマンドまたはファイル名が違います」 「'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。」 「Exception in thread "main" java.lang.NoClassDefFoundError: 」 (p)ttp://www.wikiroom.com/java/?path,classpath ・「\12288 は不正な文字です。」 文字リテラル以外で全角スペースは使えません。半角スペースに。 ・その他の質問→「APIのjavadoc見ろ」 ・String に == は使うな。equals() を使え。※ 質問時の心得 ・コンパイルエラーか実行時エラーか、エラーではないが意図しない動作なのかはっきりしろ。あとエラーメッセージちゃんと読め。 ・前提条件としてOS、開発環境、バージョン、使用フレームワーク等を明記。 前スレ ★★Java質問・相談スレッド176★★ [無断転載禁止](c)2ch.net echo.2ch.net/test/read.cgi/tech/1453305105/
321 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 00:12:06.49 ID:PIc+/we5.net] >>315 CVSは辛い googleブロックってどうやって調べてるんだろ…
322 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 00:21:35.22 ID:S4Jb0Jne.net] そういうスキルないのに意識だけが高い現場だと、ツールそのものは大した問題じゃないと思うよ PGはコミット禁止でテストしてからSEにソース渡してSEがレビューしてコミットするといった 信じられないプロセスだったりするのでCVSだろうがgithubだろうが一緒
323 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 01:47:27.37 ID:Wgkx7V5Z.net] >>321 プルリクエストとはなんだったのか
324 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 08:46:02.52 ID:3SH6J+nC.net] この宇宙が仮想現実である10の根拠 1、宇宙には始まりがあった 2、宇宙には速度の限界がある 3、時間が伸び縮みする 4、空間が曲がる 5、ランダム性の存在 6、反物質の発生 7、二重スリット実験 8、暗黒エネルギーと暗黒物質 9、電気は大切にね 10、量子のもつれ
325 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 08:46:57.30 ID:BY7gxQ6D.net] プロリクエスト
326 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 10:40:46.40 ID:Io6gDb11.net] 中二病
327 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 12:41:49.13 ID:rnbZR8VO.net] 成果物が同じならプロセスはどうでもいいっていうのは日本じゃ受け入れられにくいよね ITに向かない民族性
328 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 14:04:06.92 ID:kZbAhEb9.net] 民族論(笑)
329 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 17:19:44.98 ID:aCIb/Afb.net] 文字列の最後が「aa/bb/ccc/////」というように「/」だらけの時 重複する「/」を消して「/」を一つだけ残す「aa/bb/ccc/」にはどうしたら良いでしょう
330 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 18:19:23.39 ID:PvmuAn/z.net] 正規表現の置換で済むとは思うけど そもそもそんな文字列が来ること自体をどうにかした方がいいのでは
331 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 18:50:04.16 ID:aCIb/Afb.net] やっぱりそっちの方がいいか 原因がわからん… ありがとうございました。
332 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 19:17:02.76 ID:5yHtAFO1.net] javax.swingのJPanelクラスについてです API仕様のページを見ると 警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 と書いてるのですが、今はjre1.8.0_77で制作しているのだけれど 後々のVerではJPanelが使えなくなってるという意味でしょうか?
333 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 19:27:22.43 ID:kwHy2nMt.net] >>331 直列化しても、ver上がったら互換じゃなくなるから、直列化しない方がいいよって事で、別に使えなくなるわけではない
334 名前:デフォルトの名無しさん mailto:sage [2016/04/14(木) 19:38:08.59 ID:5yHtAFO1.net] ありがとうございます 直列化の意味自体まだよくわからないけど現時点では気にしなくて良さそうですね
335 名前:デフォルトの名無しさん [2016/04/15(金) 00:52:19.63 ID:2OIKQTGL.net] JavaのWebアプリで高負荷対策の技術書とかありますかね
336 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 01:43:11.43 ID:bUV3CLMX.net] 1〜10までの数字から、1つの数字につき何回までと回数制限のついた乱数を扱いたいのですが、いいやり方ないですかね 今考えてるのが、指定した回数同じ数字が出たらその数字だけを削除するというやり方なんですけどそういうことってできますか?
337 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 01:53:30.26 ID:Kb1QsQnw.net] Java関係ない質問を堂々としてくる奴ってやっぱ頭おかしいのか?
338 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 02:02:25.97 ID:bUV3CLMX.net] ここはjavaの概要とかの質問スレでプログラミング内容についてはここじゃなかったんですね スレチ失礼しました
339 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 02:14:24.78 ID:WdPX8J7a.net] アルゴリズムは言語とは別
340 名前:デフォルトの名無しさん [2016/04/15(金) 03:11:13.52 ID:wTKSUkgE.net] >>335 できますよ。
341 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 03:26:07.23 ID:goHZ67UE.net] 配列に、各数字を回数分だけ入れて、シャッフルする。 たぶん、配列をシャッフルする関数があるはず 1,1,1,2,2,3...10 1が3回、2が2回など
342 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 03:40:47.95 ID:goHZ67UE.net] >>328-330 正規表現で、/ の2回以上は、 /{2,} それを、/ に置換する
343 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 09:07:09.12 ID:60+wZjVq.net] Javaを独学で勉強してるんですが、strutsとstruts 2ってまだ現役ですか? 勉強しといたほうがいいですかね?
344 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 09:27:24.51 ID:MBFKaPoJ.net] バリバリ現役(悪い意味で)だけど今からあえて勉強するだけの意義があるかは微妙 ほかの言語のフレームワークに触ったことがないならやっても良さそう
345 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 09:29:47.38 ID:DHB605eu.net] java.lang.ArrayIndexOutOfBoundsException このエラーが出た時if使ってcontinueしたいんだけどどう書けばいいの?
346 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 09:32:19.37 ID:MBFKaPoJ.net] その処理は明らかにやばそうだぞ continueするより例外出さないようにロジックをいじる事で対処できないか
347 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 09:44:56.97 ID:DHB605eu.net] ごめん 上の方で <= すべきところが < になってただけっぽい 仮眠とるわ…
348 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 09:58:42.20 ID:60+wZjVq.net] >>343 まだ現役なんですか じゃあやっときます ありがとうございました
349 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 12:37:39.10 ID:iI4IFZ12.net] strutsはjavaで過去に作られたwebシステムの保守の仕事がまだ残ってる 新規でjavaでwebシステムを作ることはなさそう 新しいフレームワークに触りたいならjavaにこだわるのは間違いで phpやrubyを考えるべき
350 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 12:44:05.92 ID:H7MBctfM.net] JavaEEが各種フレームワークの考え方を取り入れて JavaEEだけで事足りるようになったんじゃないの?
351 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 14:31:37.94 ID:RFsrsdYp.net] >>348 はなぜここにいるのだろう
352 名前:デフォルトの名無しさん [2016/04/15(金) 14:38:49.17 ID:3hfhn66R.net] Javaで作られたシステムを動的型付言語に変換とかww
353 名前:デフォルトの名無しさん mailto:sage [2016/04/15(金) 23:04:20.92 ID:tDkk2f4z.net] >>350 いつもの火病のエセphper(パッパラパー)だろ、構うな
354 名前:デフォルトの名無しさん [2016/04/16(土) 00:36:18.24 ID:4HPkUqex.net] そろそろJava EE自体が標準のフレームワークを決めないと崩壊しかねない。
355 名前:デフォルトの名無しさん [2016/04/16(土) 04:19:37.97 ID:CqNnK3O6.net] SocketPermission の accept について教えて。 ドキュメントにはこんな指定例があるんだけど、 p1 = new SocketPermission("puffin.eng.sun.com:7777", "connect,accept"); connect と accept を同時に指定してる意味がわからない。 connect は、ここで指定したホスト:ポートへこちらから connect する動作について許可してるんだよね。 でも accept って connect された側(向こうのサーバ側)でやるものだと思ってるんだけど、そう考えると↑のコードの意味がわからない。 connect は自分がクライアントとしてサーバに接続する動作を表しているものであり、ホスト:ポートはサーバを表してる listen は自分がサーバとしてポートを開けて待つ動作を表しているものであり、ホスト:ポートは自分を表してる accept は自分がサーバとしてクライアントからの connect を受け付けコネクションを確立する動作を表しているものであり、ホスト:ポートはクライアントを表している わけではないの?
356 名前:デフォルトの名無しさん mailto:sage [2016/04/16(土) 12:38:52.06 ID:2tsYHffH.net] struts1のexecuteメソッドってフォーム送信時じゃなくても実行されるんでしょうか? アクションフォームのresetメソッドでtextフィールドの値を初期化してるんですが、 単純にページを表示するだけでもexecuteメソッドで処理した値に書き換わってしまってるので・・・ あと、struts1って調べると3年以上更新がないし、脆弱性もあるらしいので今更勉強する価値ないですか? struts2はやるつもりですが。
357 名前:デフォルトの名無しさん mailto:sage [2016/04/16(土) 14:40:23.08 ID:UrBn8I6z.net] 糞保守案件をやりたいならやればいいじゃん 新しいことやりたいならPHP,Rubyですよ
358 名前:デフォルトの名無しさん [2016/04/16(土) 14:55:31.04 ID:4HPkUqex.net] >>356 それも全然新しくない。
359 名前:デフォルトの名無しさん mailto:sage [2016/04/16(土) 15:19:03.68 ID:oVzN7rEj.net] >>356 巣に帰れ 他のスレでそういうこと言うからPHPユーザはキチガイっていわれんだよ
360 名前:デフォルトの名無しさん mailto:sage [2016/04/16(土) 17:36:34.46 ID:2tsYHffH.net] 逆に今一番JAVAで勉強しておくべきWEBフレームワークってなんなんですか?
361 名前:デフォルトの名無しさん mailto:sage [2016/04/16(土) 20:50:41.58 ID:968QEWx4.net] >>359 JavaEE7とSpringBootやっとけばいい、 来年にはJavaEE8も待ってる
362 名前:デフォルトの名無しさん mailto:sage [2016/04/16(土) 20:53:58.35 ID:968QEWx4.net] 今はむしろBatch F/Wこそ何を学ぶか迷うところじゃないか? こっちもJBatchかSpring Batchでいいのだろうか…
363 名前:デフォルトの名無しさん mailto:sage [2016/04/16(土) 20:58:33.49 ID:DanCoMtf.net] JavaEE 8 https://yoshio3.com/2014/12/19/java-ee-8-new-features/
364 名前:デフォルトの名無しさん mailto:sage [2016/04/16(土) 23:19:17.01 ID:RPFXByH/.net] C書いてて型で間違って動かなくてデバッグとかと比べると、 JAVAの型って呪文間違ってスイマセンみたいな感じしかない
365 名前:デフォルトの名無しさん [2016/04/17(日) 16:02:32.03 ID:CNQH8xMB.net] Java教に入信しようと思うんだが入門書と必須な参考書教えてや
366 名前:デフォルトの名無しさん mailto:sage [2016/04/17(日) 16:13:38.71 ID:CmgEYGVb.net] お布施は?
367 名前:デフォルトの名無しさん [2016/04/17(日) 16:15:42.07 ID:sgN/5Kw0.net] >>364 アマゾンを見ないのか?
368 名前:デフォルトの名無しさん mailto:sage [2016/04/17(日) 21:43:59.66 ID:wWReWfFV.net] 入門 やさしいJava 参考 EFFECTIVE JAVA
369 名前:スッキリ厨 mailto:sage [2016/04/17(日) 22:35:25.72 ID:DiLcHZEv.net] スッキリわかる Java入門 第2版、2014 まずこの本で、オブジェクト指向を学ぶ
370 名前:デフォルトの名無しさん mailto:sage [2016/04/17(日) 23:40:34.35 ID:yjmY7Xab.net] 出た スッキリの人。
371 名前:デフォルトの名無しさん mailto:sage [2016/04/18(月) 01:42:28.02 ID:UGMFGfpU.net] >>368 俺もこの本が無難で良いと思う 他の本みたいにあるところで急に突き放されるというのは少なかったように感じる
372 名前:デフォルトの名無しさん mailto:sage [2016/04/18(月) 02:37:28.84 ID:/DQQFklr.net] 分厚い図体にスッキリという名前をつける時点で、ツッコミ13面待ちの冗談だろ』
373 名前:デフォルトの名無しさん mailto:sage [2016/04/18(月) 03:10:05.75 ID:0k3892Z0.net] 本あった方がいいのかなあ?今だとネットだけでも結構分かると思うんだが。 本とネット検索両方やった方が速いかな?人によるか。
374 名前:デフォルトの名無しさん mailto:sage [2016/04/18(月) 08:42:48.89 ID:Y+B4SPYb.net] import java.util.*; public class Roto6 { public static void main(String[] args) { int [] num = new int[6]; //6つ確保する for (int j=0;j<5;j++){ for (int k=0;k<num.length;k++){ num[k]=0; } int a=0; while(num[0]==num[1]||num[1]==num[2]||num[2]==num[3]||num[3]==num[4]||num[4]==num[5]) {//数字被ってる間やり直す for (int i=0;i<6;i++) { num[i]=(int)(Math.random()*43)+1;//1から43の乱数を発生させる } Arrays.sort(num);//小さい順に並び替える a+=1;//やり直した回数をカウントする } for (int i=0;i<6;i++) {//6つの数字を表示する System.out.print(num[i]+" "); } System.out.println("\t[回数:"+a+"]\n");//やり直した回数を表示する } } }
375 名前:デフォルトの名無しさん mailto:sage [2016/04/18(月) 08:48:06.26 ID:Y+B4SPYb.net] >>373 はロト6用の乱数を一行ずつ開けて「5回」表示するプログラムです コマンドプロンプトで実行した場合、基本的には滞りなく終わるのだけど、ごく稀に「6回」表示することがあります。 その際には5つめと6つめの列が一行間隔開かずに表示されることが多いようです 何が原因でしょうか?
376 名前:デフォルトの名無しさん mailto:sage [2016/04/18(月) 20:18:15.99 ID:C+iDXaNw.net] >>372 初心者が読み物として一通りざっと眺めるには本の方がいいと思う ピンポイントでわからんところを調べるにはネットの方が楽だけと
377 名前:デフォルトの名無しさん [2016/04/19(火) 03:02:14.73 ID:ymmOnleN.net] >>374 それ以前の問題として重複する数の判定が駄目だよな。 例えば num[0] と num[2] が同じ値だった時に while の判定で引っかからない。
378 名前:デフォルトの名無しさん mailto:sage [2016/04/19(火) 03:10:17.03 ID:ymmOnleN.net] あ。ソートするからできるのか。 うーん。意表を突く無駄な感じの処理。 俺だったら素直に long の変数でビットフラグにして重複チェックしちゃうなあ。
379 名前:デフォルトの名無しさん mailto:sage [2016/04/19(火) 04:03:02.39 ID:XqbFEqHU.net] 同じ数字は、1回しか使えないのか? それなら自作しないで、たいていの言語にある、shuffle を使う
380 名前:デフォルトの名無しさん mailto:sage [2016/04/19(火) 12:50:05.92 ID:560ecuyq.net] >>377 > 俺だったら素直に long の変数でビットフラグにして重複チェックしちゃうなあ。 kwsk
381 名前:デフォルトの名無しさん mailto:sage [2016/04/19(火) 13:19:04.81 ID:MIf0eVbK.net] int[] numbers = new int[] {0, 0, 0, 0, 0, 0}; Random r = new Rundom(); int count = 1 for (int i=0; i<numbers.length; i++) { int val = r.nextInt(43) + 1; while(Arrays.stream(numbers).anyMatch(n -> (n == val))) { count++; val = r.nextInt(43) + 1; } numbers[i] = val; } DecimalFormat df = new DecimalFormat("00"); Arrays.stream(numbers).sorted() .forEach(n -> System.out.print(df.format(n) + " "));
382 名前:デフォルトの名無しさん mailto:sage [2016/04/19(火) 16:33:15.95 ID:icbWRg4H.net] よく考えたらこれでいいのか。 for (int i=0; i<5; i++) { int[] n = new Random().ints(1, 44).distinct().limit(6).sorted().toArray(); // n出力 }
383 名前:デフォルトの名無しさん mailto:sage [2016/04/19(火) 17:03:14.11 ID:MIf0eVbK.net] 連投失礼、最終的にこうなった ttp://ideone.com/7WHQFw
384 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 00:41:01.31 ID:4AzJcbEx.net] >>382 一瞬なにか新しい文法か増えたのかとオモタヨw
385 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 01:06:24.76 ID:sZSlY5HM.net] >>379 まあ、なんというか、こんな感じ。 ideone.com/LSSIas これは求める値が 1 〜 43 なので Java の long 型のビット数で収まる(64bitなので)から long 型一つでやってるだけだ。65以上まで求める場合はこれでは収まらないのでもう少し 捻る必要がある。(boolean[] でビット数分だけ要素確保してやってしまうという手もある)。 で、なんとなく分かると思うが、この方式は求める値の範囲が大きくなるとその分だけ記憶 するためのビット数が増えてしまい、そうなるとあまり良い方法とは言えなくなる。 >>382 この頃の Java は凄いな。しかしその書き方をよく知っていないと分かり辛いように思う。 (慣れの問題もあるだろうけど)。
386 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 01:35:02.44 ID:p6+kfoxd.net] お前らカッコよすぎて濡れた https://paiza.io/projects/ls9yk6zRCIoA_bHPbSbb_g for (int i = 0; i < 5; i++) { List<Integer> list = Arrays.asList(IntStream.rangeClosed(1, 43).boxed().toArray(Integer[]::new)); Collections.shuffle(list); System.out.println(String.join(" ", list.subList(0, 6).stream().sorted().map(x -> String.format("%02d", x)).toArray(String[]::new))); }
387 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 05:19:14.17 ID:M/2D7XXJ.net] 質問の答えになってない気がする
388 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 06:41:08.00 ID:ScRxEleY.net] >>386 なってないのだよ
389 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 13:08:36.12 ID:Ul9xGLZA.net] オブジェクトが空かどうかを調べる時って、isEmpty使えばいいと思ってたんですけど、 オブジェクト自体が空の場合nullpointerexceptionが発生するので if(obj!=null && !obj.isEmpty()){ } こんなめんどくさいことしなくちゃならないんですか?
390 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 13:32:54.55 ID:si6RHyN1.net] Object型にisEmptyはない オブジェクトがさしているのがListとかならApache langのCollectionUtils.isEmptyとか使うわ
391 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 13:43:20.16 ID:Ul9xGLZA.net] なるほど ありがとうございました
392 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 15:16:24.79 ID:PR+4S9NH.net] エクリプスで実行したり、コマンドプロンプト立ち上げてそこから起動したりしていますが エクスプローラー上でコンパイル済みのファイルを直接ダブルクリックしたら起動するような感じにするにはどうすればいいのでしょうか
393 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 15:44:33.72 ID:zy6EssHC.net] >>391 実行可能jarで検索
394 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 21:26:52.00 ID:jVIlAOl2.net] exewrapとかいうのでexeにできたはず
395 名前:デフォルトの名無しさん mailto:sage [2016/04/20(水) 22:56:40.26 ID:YUW7UYxw.net] Java goldの資格は、持っていると役にたちますか? 受験料が高いから、とるかどうか🌀
396 名前:デフォルトの名無しさん mailto:sage [2016/04/21(木) 00:28:47.95 ID:4llJ3u9Q.net] それはその資格持ってると就職しやすくなるかとか、手当てが付くかとか、そういう意味? とすると、そんなもんは会社によって違うのでなんとも言えないという答えにしかならんと思うが。
397 名前:デフォルトの名無しさん [2016/04/21(木) 01:03:28.81 ID:ZnMRJ7pm.net] どのフレームワークが今後流行りそうですかね
398 名前:デフォルトの名無しさん mailto:sage [2016/04/21(木) 06:50:26.63 ID:d6WxNPfz.net] >>395 そういう意味です ありがとうございます
399 名前:デフォルトの名無しさん mailto:sage [2016/04/21(木) 07:44:39.28 ID:oysVz7Sr.net] >>397 先にIPAのDBとNW取れ
400 名前:デフォルトの名無しさん mailto:sage [2016/04/21(木) 12:44:15.44 ID:6xvYQQmF.net] JUnit実践入門 渡辺 修司/著 では 日本語によるメソッド名を推奨していますが(p14) どうでしょうか。
401 名前:デフォルトの名無しさん [2016/04/21(木) 13:56:39.81 ID:GGv15XqL.net] >>399 その人、実務があやしいからな。
402 名前:デフォルトの名無しさん mailto:sage [2016/04/21(木) 14:02:11.30 ID:oysVz7Sr.net] testHoge1みたいな糞みたいな名前よりは日本語のほうが遥かに良い 「Hogeは引数が負のときnullを返す」を英語でさらっと書けるんなら英語で書けばいいけど、 それが難しいからってtestHoge1に逃げるくらいなら日本語にしとけ
403 名前:デフォルトの名無しさん mailto:sage [2016/04/21(木) 18:37:42.59 ID:vbs6NeXV.net] >>401 whenArgumentMinusReturnsNull 書くのはさほどでもないが、読む気力が・・・
404 名前:デフォルトの名無しさん mailto:sage [2016/04/21(木) 18:46:53.19 ID:qck1KPSK.net] Tomcatをインストールして、 /etc/init.d/tomcat start を実行したのですが、 Server startup in 14727 ms から動きません どうしたらいいでしょうか?
405 名前:デフォルトの名無しさん mailto:sage [2016/04/21(木) 19:26:11.71 ID:5b6TlV31.net] >>398 ありがとうございます。 IPAの資格中心に、調べてみます
406 名前:デフォルトの名無しさん mailto:sage [2016/04/21(木) 21:00:11.06 ID:M+N3g12/.net] >>403 Linux板で聞けよ
407 名前:デフォルトの名無しさん mailto:sage [2016/04/22(金) 20:35:02.61 ID:yHcO4kd5.net] 初心者ですみませんが質問させてください。 常に動いているべきjavaプログラムが、読み込んでいる(他人作の)ライブラリを走らせる度に低確率ではありますが終了してしまいます。(Throwableでも拾えない) 終了してしまうと、ソケット間での通信が行われなくなってしまう為、どうにかしてjavaのプログラムを自動的に再起動させたいのですがどういった方法があるのでしょうか? 特に過度な負荷がかからなければ2-3分以内に自動復帰して欲しいな・・・とか思ったり・・・。
408 名前:デフォルトの名無しさん mailto:sage [2016/04/22(金) 21:14:11.04 ID:RgS8dpF2.net] サービスとして登録する UNIXにしろWinにしろJava関係ない
409 名前:デフォルトの名無しさん mailto:sage [2016/04/22(金) 21:53:56.49 ID:tdFz46+N.net] お前のプログラムかライブラリか両方があやしいいんだろ
410 名前:デフォルトの名無しさん mailto:sage [2016/04/22(金) 23:41:10.76 ID:Ib5pDrM4.net] >>406 それって別々の仮装マシンで動いてるの? それとも同じ仮装マシン内での別スレッド? それとそれを動かしているOSや環境は?
411 名前:デフォルトの名無しさん mailto:sage [2016/04/22(金) 23:43:42.54 ID:IdrTRhwo.net] >>406 例外が拾えないってmainメソッドのなかでtry - catcheしただけなんじゃないの? UncoughtExceptionHandlerで拾って対処すればよくないか?
412 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 00:20:46.93 ID:u0nc/OKC.net] 的外れなこと書いてたらすみません。 >>407 自動起動じゃなくて自動復帰もサービスで対応できるんですか >>409 そもそも仮想マシンなんて使ってないよー >>410 メインではありませんが確かにtry-catchしてるだけです。プログラミング歴が浅いので色々勉強中です。 少しググった程度ですが、UncoughtExceptionHandlerというのをメソッドをメインクラスに作成して置けば何かあった時にここに戻せたとして、 今までやっていた処理に戻すような事ってできるんでしょうか ”イメージ的”には ServerChecker.javaというのを他人が作っていて その中のpublic function run_checker()を呼び出した際、稀にエラーをおこし、ログ表示して強制終了してしまう・・・ お陰でメインのデバッグ作業が一行に進まない・・・もう時間がないのに・・・ 辛い・・・
413 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 03:14:51.44 ID:Tn31QjfB.net] >>411 とりあえずお前のレスでJavaがどう動いているのかさえ理解していないのがよくわかった 愚痴が言いたいならチラ裏に池
414 名前:デフォルトの名無しさん [2016/04/23(土) 03:23:49.82 ID:4qA6LreB.net] >>411 え? Java のバイトコード動かすのにJava仮想マシン使ってないの? ネイティブで動く環境なんかあったか? それともその辺のことわかってないのか?
415 名前:デフォルトの名無しさん [2016/04/23(土) 03:27:04.99 ID:4qA6LreB.net] >>411 それどう考えてもエラー起こした時にその中で System.exit(1); みたいなことしているとしか思えんのだが。 呼んだ先のソース見てみな。
416 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 10:21:34.08 ID:S+NzvAIq.net] エスパー当たりー!
417 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 11:12:24.20 ID:sATx4l1d.net] >そもそも仮想マシンなんて使ってないよー ワロタ
418 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 19:34:32.72 ID:Xvdj9/0l.net] >>416 いやいや、Javaチップ搭載機かも
419 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 21:56:20.11 ID:u0nc/OKC.net] >>413 仮想マシンってjvmの事ですか?…別の事を頭に浮かべてた、ごめん…Javaは勉強した事ないから全然分からないですが、多分別スレッドかな >>414 まさにその通り、オーバーライドして止まらないように出来るらしいけど、他の部分で問題起きないのかなーとうだうだ悩んでる 数万行を超える他人が作ったソースに対して一々チェックするのは無理だし…ファイル数アホみたいに多いし… 初心者お断りっぽいですし上手く説明出来る自信も無いのでここで質問を終了しようと思います。レス下さった方有難うございました
420 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 22:48:09.92 ID:G4KBYq9M.net] お前には無理、後だし、以上
421 名前:デフォルトの名無しさん mailto:sage [2016/04/23(土) 23:07:57.30 ID:u0nc/OKC.net] 糞レス多すぎてhageそう。まじぬるぽ