X



★★Java質問・相談スレッド181★★
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
垢版 |
2018/02/10(土) 17:49:40.56ID:l9ZzjyKP
プログラミング言語Javaに関する質問スレです。
JavaScript, Ajaxの質問は、ここでは受け付けていません。
Web製作管理    http://pc11.2ch.net/hp/
Webプログラミング http://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質問・相談スレッド180★★
https://mevius.5ch.net/test/read.cgi/tech/1492780397/
0135デフォルトの名無しさん
垢版 |
2018/04/01(日) 18:17:02.75ID:QRZAvcI4
>>134
どうもです。しかし最終的に普通の時刻の文字列をDurationのインスタンスから
生成する方法がわからないのですが... ??

Duration duration = Duration.parse("PT2H36M"); とかしたとして、
toString()も単に"PT2H36M"を返しますよね。
もしかして toHours() -> 2, minusHours(2).toMinutes() -> 36 とかでで2と36を取り出し、
その後これらから文字列をなんとか作るという話でしょうか?

経過時間の計算そのものでなく、時間と分の数値は最初から与えられたとして、経過時間
の文字列の生成を如何に楽に行うかに興味があるのですが...
0136デフォルトの名無しさん
垢版 |
2018/04/05(木) 14:05:21.72ID:MD4dwdXJ
XPにはJava8インストールできないの?
0139デフォルトの名無しさん
垢版 |
2018/04/24(火) 08:31:35.21ID:zK8TVl/a
良心的なブログよりためになるブログが良い
デザインパターンを書き写しただけのゴミを見せられる
読者の立場にもなれ
0146デフォルトの名無しさん
垢版 |
2018/05/06(日) 11:09:29.87ID:PC9jam24
データベースに保存したいJavaのオブジェクトが大量にあるのですが
直列化ではコーディングやデバグにかかる時間がかかりすぎるので
もっと簡単に永続化できるライブラリかフレームワークなどはありますか
0147デフォルトの名無しさん
垢版 |
2018/05/06(日) 11:13:54.12ID:PC9jam24
オブジェクトが大量にあるというかオブジェクトの雛形になる
クラスが大量にあるということです
0150デフォルトの名無しさん
垢版 |
2018/05/06(日) 13:47:11.04ID:XXaq/T45
>>146
ObjectOutputStreamのwriteObject()呼び出すだけなわけだが、
コーディングに時間が掛かるとか、もっと簡単にとはいったい?
ここに書いてない要望が他にもあるんじゃないの?
0151デフォルトの名無しさん
垢版 |
2018/05/06(日) 14:33:54.08ID:kuy66ISG
>>150
顧客が本当に欲しい物は、
クラスを指定したらシリアライズ処理を自動で吐き出してくれるプラグインとか
そういうものなんじゃないかね
0152デフォルトの名無しさん
垢版 |
2018/05/06(日) 15:02:54.32ID:i9j42Pj0
ここに質問するのが適切なのか悩ましいのですが…
OpenJDKは再頒布可能なのでしょうか?

個人の趣味で作ったアプリケーションに同梱して配布してよいのかな?と思い調べているところです。
自分でビルドしたOpenJDKなら再頒布可能、CentOSなどが公開しているOpenJDKは再頒布不可などあるのでしょうか。
0153デフォルトの名無しさん
垢版 |
2018/05/06(日) 15:56:01.81ID:Ba+o29Eu
ディレクトリ a にある a.jar のなかの A.class (package a)
ディレクトリ b にある b.jar のなかの B.class (パッケージ宣言なし)
を使ったディレクトリ c にある c.jar ってどうやって実行すればいいですか

はるか昔に作って昔は動いてたはずなんですけど実行の仕方がわからなくなりました
0154デフォルトの名無しさん
垢版 |
2018/05/06(日) 16:09:20.09ID:yRUrTeQA
>>150-151
対象となるクラスがあまりにも多くてreadObjectとwriteObjectを
いちいち宣言するのが面倒くさい上に
少しでも書き間違えたときにIDEが検出してくれないし
デシリアライズに失敗したときに原因となったクラスを特定するのが困難だしで
その辺の手間を楽をする方法を探していたんだけど
JAXBでXML化する方法を思いついたので自己解決しました

ありがとうございます
0155デフォルトの名無しさん
垢版 |
2018/05/06(日) 17:01:33.93ID:Bse1bLkg
>>153
その jar ファイルを全てクラスパスに指定すればいいのでは?
環境変数 CLASSPATH かコマンドラインで -cp (java -help の出力またはドキュメント参照)。
0156デフォルトの名無しさん
垢版 |
2018/05/06(日) 18:35:06.08ID:Ba+o29Eu
>>155
動きました
パスってディレクトリに通すものかとおもってたんですがjarファイル自体を指定するんですね
ありがとうございました
0158デフォルトの名無しさん
垢版 |
2018/05/10(木) 16:22:03.34ID:TnST3c7c
GatlingとかLoad Runner、JMETERの動作テスト、Javaのスレッドダンプ取得とかの練習をしたいと思ってます

そのターゲットとなるWebアプリを探してます

今のところFessという、Tomcat上で動いてるWebアプリは見つけました
他にオープンソースで、Javaでうごいていて、Gatlingなんかの練習に使えるWebアプリについて情報ほしいです
どんなものがありますか?
0160デフォルトの名無しさん
垢版 |
2018/05/11(金) 09:01:56.54ID:ou2CAaSI
tools.jarはLinux,Mac,Winで互換性がありますか?
0161160
垢版 |
2018/05/11(金) 09:34:33.65ID:ou2CAaSI
あるいは、JavaCompiler単体のjarか独自のJavaCompilerは公開されていますか?
Java9からアプリ側から利用できなくなったそうなので。
0162デフォルトの名無しさん
垢版 |
2018/05/11(金) 09:57:35.61ID:BZrCuED6
javax.swing.JPopupMenuを直接show()で表示させてます
問題はマウスをメニューアイテムの上に乗せても、クリックしても色が変転しない
設定で定義しないといけない事があるのでしょうか?
0163デフォルトの名無しさん
垢版 |
2018/05/11(金) 13:18:37.00ID:Kz4/xaqB
>>158
Githubで言語絞れば一発
今聞かれて俺が思いつくような有名なOSSって規模が大きかったり環境整えるのが厄介だったりするのが多いから、
簡単に動かせそうなしょぼいのを適当に自分で選んだほうがいい
0164デフォルトの名無しさん
垢版 |
2018/05/12(土) 08:20:02.64ID:gX8J6qxW
>>162
addMouseListenerで e.getComponent().setBackground(Color);
で反転するようになった
0165デフォルトの名無しさん
垢版 |
2018/05/12(土) 10:58:22.92ID:pDgCeBjY
共同ツール 1
https://seleck.cc/685

https://trello.com/
ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど
Trello Chrome拡張機能 elegant
ttp://www.kikakulabo.com/service-eft/
trelloのオープンソースあり

共同ツール 2
https://www.google.com/intl/ja_jp/sheets/about/

共同ツール 3
https://slack.com/intl/ja-jp
https://www.dropbox.com/ja/
https://bitbucket.org/
https://ja.atlassian.com/software/sourcetree
https://sketchapp.com/extensions/plugins/
ttp://photoshopvip.net/103903

ttps://goodpatch.com/blog/sketch-plugins/
0167デフォルトの名無しさん
垢版 |
2018/05/12(土) 13:54:22.02ID:UoMtV9Kh
          ∧_∧
    ∧_∧  (´<_`  ) また宣伝書き込み? 
うん ( ´_ゝ`) /   ⌒i
   /   \     | |
  /    / ̄ ̄ ̄ ̄/ |
__(__ニつ/  FMV  / .| .|____
    \/____/ (u ⊃
0168デフォルトの名無しさん
垢版 |
2018/05/23(水) 19:25:05.40ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

0XZ3H
0169デフォルトの名無しさん
垢版 |
2018/05/23(水) 19:53:26.57ID:iVq3rLr7
          ∧_∧
    ∧_∧  (´<_`  ) 儲かるなら自分でやればいいじゃんな。 
うん ( ´_ゝ`) /   ⌒i
   /   \     | |
  /    / ̄ ̄ ̄ ̄/ |
__(__ニつ/  FMV  / .| .|____
    \/____/ (u ⊃
0170デフォルトの名無しさん
垢版 |
2018/05/24(木) 05:14:55.03ID:iSd0paxF
https://ideone.com/fOelKc
除数が変数の%演算子がなんか遅かったからこんなん作ったんだが、もうちょっと速くならんかな?

被除数の範囲は0以上Long.MAX_VALUE以下、
除数は16ビットくらいまでの範囲が使えて速ければよす


うちの環境だとマイクロベンチで4倍
実際に組み込んで全体の速度が2倍くらいにはなったんだが (とボトルネックをいじってるよアピールw
0172デフォルトの名無しさん
垢版 |
2018/05/25(金) 10:54:04.75ID:Sw3LTZE2
>>171
ideoneはメインスレッド含めて8スレッド(論理コア分)アクティブになるとダメっぽい
んで、パラレルストリームで使われる共通ForkJoinPoolが論理コア-1個スレッドを起動するから、
メインスレッドと合わせて論理コア分アクティブになってアウト

スレッドプールの数を6でForkJoinPoolを作ってそれを使ってStream動かせば大丈夫っぽい…めんどくせw
0173デフォルトの名無しさん
垢版 |
2018/05/28(月) 17:05:15.50ID:ykC4rFCg
記述がFXで申し訳ないのですが、ご教授宜しくお願いします

ttp://i.imgur.com/T6CUOxA.jpg

A面は↓の回転値でいけるかと思うのですが
B面の回転ってどのように指定すればいいのでしょうか?
色々値を変えてみたのですがなかなか上手くいかず…

//画像
Image img = new Image( new File("ファイル.png").toURI().toString() );
ImageView imgv = new ImageView( img );
imgv.setTranslateX( 70 ); imgv.setTranslateY( 1300 ); imgv.setTranslateZ( -48 );

//回転
imgv.setRotationAxis( new Point3D( 1.0, 0.0, 0.0 ) );
imgv.setRotate( 90.0 );
0176デフォルトの名無しさん
垢版 |
2018/05/29(火) 19:26:49.25ID:cb/igs7S
寝ることは重要だな
0178デフォルトの名無しさん
垢版 |
2018/05/31(木) 09:29:18.82ID:P1af5ns+
プログラムの中でswingによるGUIを表示させ、ユーザにラジオボタン・リストから値を選択してもらい、その値を後続の処理に使用したいと思ってるんですが
GUI表示してそのまま後続の処理が続いてしまいます
表示した時点で処理を停止させ、ユーザが値を選択してOKボタンを押したら処理が再開するようにすることはできますか?
0180デフォルトの名無しさん
垢版 |
2018/05/31(木) 11:35:44.34ID:qv6ph+UR
どういう処理にしてるかわからないから正確なアドバイスは出来ないけど
guiの変更イベントで処理すれば出来るんじゃない?
0181デフォルトの名無しさん
垢版 |
2018/05/31(木) 12:34:12.85ID:1EOK+kFV
GUIプログラムはパネルを表示したらループ状態を続ける
処理は各コンポーネントのリスナーにどう処理するかを登録して
ボタンやリストを選択したら登録されてる処理を実行する
ボタンならaddActionListenerを使うんじゃないの
0182デフォルトの名無しさん
垢版 |
2018/05/31(木) 13:23:37.92ID:XsftK6MO
>>178
それいわゆるダイアログってやつだよね。
0183デフォルトの名無しさん
垢版 |
2018/06/01(金) 12:00:41.25ID:SFIgpc6j
>>178
JDialogを継承したクラスで作る。
コンストラクタで modal を true にするか modlity type をブロックするやつにする。
更に OK ボタン等が押されてダイアログを閉じるときは dispose() するように書く。
その他ラジオボタンなど必要なものを配置し、内容を外部から取得可能にするためにgetterを作っておく。

このダイアログをsetVisible(true)するとdispose()されるまで帰ってこない。
帰ってきたらgetterを通して内容を読む。
0186デフォルトの名無しさん
垢版 |
2018/06/03(日) 20:18:35.08ID:3rEkE1iw
今アプレット動く環境ってありますか?
IEだけはサポートされてるみたいなんですけど
昔動いたはずのアプレットタグとjarをおいてもなぜか動かないんですよね
IEでアプレット動かしたときのエラーメッセージの見方もわかれば教えてほしいです
0187デフォルトの名無しさん
垢版 |
2018/06/03(日) 21:06:43.44ID:m3SIxw/I
>>186
何故かうごかないって、ブラウザは?
そしてそのブラウザにプラグインはインストールされている?
単にされてないだけでは?もちろんそのブラウザ用のプラグインが今は開発されてないってこともあり得るが。
0188デフォルトの名無しさん
垢版 |
2018/06/03(日) 23:44:08.17ID:3rEkE1iw
>>187
Windows7 IE8 でツール インターネットオプションのなかに
アプレット有効にするってのにチャックはいってます
アプレットページひょうじすると表示領域の枠はでてるんですけど左上に赤い×マークがでてます

これプラグインがよみこめてないんでしょうか
アプレットの中のエラーで落ちてるんでしょうか
0192デフォルトの名無しさん
垢版 |
2018/06/04(月) 22:24:19.20ID:AidiJH9V
7か8か忘れたけど結構前から証明書必須になったし
9で非推奨、11で削除されるぞ。

jnlp出てからsunがずっとjnlp使えと言い続けてたんだから
jnlp(実装はweb start)使え。
0193デフォルトの名無しさん
垢版 |
2018/06/05(火) 01:07:27.61ID:6uzbBGLs
どうやって作ればいいんですか?
HelloWorld的なサンプルコードってあったりしますか?
0194デフォルトの名無しさん
垢版 |
2018/06/05(火) 01:49:45.76ID:6uzbBGLs
調べて jnlp ファイルっていうのかいてみたけどセキュリティどうこうで動かないみたいです

同じサーバー内にあるデータを読んで表示して
処理した結果をCGIに送って保存するみたいなアプレットだったんですけど
URLのOpenStreamの読み書きもセキュリティ的にアウトな感じなんでしょうか

昔かいたプログラムが実務で使えそうだったので
うまくウェブアプリとして動いてくれればよかったんですが
長いことJavaさわってなかったせいで分からないことだらけで時間ばかりかかってまったく進まない

おとなしく javascript でかきなおしたほうがよさそうですね…

15年前はこれからのウェブはアプレットの時代だとかいって大学でもアプレット教えてたし
当時作ったコードが全部再利用すらできないゴミになったかと思うと憂鬱だ
0196デフォルトの名無しさん
垢版 |
2018/06/06(水) 23:02:07.48ID:c8dAN/Mm
アプレットどころか、今やJRE自体が一般ピープルのPCにとってはウィルス扱いだぞ
JavaFXも事実上廃止されてJavaを簡単にアプリにバンドルする方法も無くなり、クライアントは完全に終わった
0198デフォルトの名無しさん
垢版 |
2018/06/07(木) 03:27:56.30ID:VEx/11mP
Oracleがバンドルしなくなる。
フルーソフトだからなくなりはしないだろうけどね。
0199デフォルトの名無しさん
垢版 |
2018/06/07(木) 03:28:26.90ID:VEx/11mP
うはw 変な編集ミスしたw
0200デフォルトの名無しさん
垢版 |
2018/06/07(木) 06:34:03.30ID:zhEE1GLq
JavaFXどうなっちゃうんだろうな
OpenJDK11と一緒にopen-jfx11のバイナリもリリースしてくれるといいが

現状もLinuxディストリビューションのいくつかはopen-jfcパッケージ提供してるけど
Windows用の権威あるopen-jfxバイナリなくて不便なんだよね
Windows用にもopen-jfxの野良バイナリがいくつかあるようだけど
0201デフォルトの名無しさん
垢版 |
2018/06/07(木) 09:18:14.94ID:6qWq6S5o
権威のある君が作れば良い
0204デフォルトの名無しさん
垢版 |
2018/06/08(金) 01:33:25.23ID:xsX40G/R
ここでいいのかよくわからないのですが教えて下さい。

AndroidでSDカードのフォルダが
/storage/47D2-1300
みたいに表示されます。
この場合、
47D2-1300
は、このSDカード固有の番号で、他のAndroid機に刺しても
47D2-1300
のように表示されるのでしょうか?
0206デフォルトの名無しさん
垢版 |
2018/06/08(金) 03:57:47.64ID:xsX40G/R
そういうのは、Javaスクリプトっていうんじゃないの?
0208デフォルトの名無しさん
垢版 |
2018/06/08(金) 07:09:41.59ID:uSJSyiA7
on error goto みたいなの無いの? そのルーチン内ならどこでエラー発生してエラー処理に向かう、みたいな
それともtrycatchに全部入れちゃう?
0209デフォルトの名無しさん
垢版 |
2018/06/08(金) 08:13:31.47ID:/bqVuVHr
>>206
JavaとJavaScriptは全く別のものだ。
0210デフォルトの名無しさん
垢版 |
2018/06/08(金) 08:18:34.82ID:/bqVuVHr
>>208
そう。

それかメソッドに throws Exception 付けておくかかな。するとそのメソッド内で例外発生すると呼び出し側に帰って例外処理になる。
0211デフォルトの名無しさん
垢版 |
2018/06/08(金) 08:23:59.92ID:BDVSM83M
On Error Gotoはtry catchで代用できるけど
On Error Goto + Resume Nextの代用がないだよね
1ステートメントごとにtry catch書かにゃならん
0213デフォルトの名無しさん
垢版 |
2018/06/08(金) 11:28:05.06ID:1PlqYTvd
>>204
そんなもんは知らん。機種によってマウントされるディレクトリは違うのでは?
0214デフォルトの名無しさん
垢版 |
2018/06/08(金) 13:10:14.04ID:OTaRl1LS
>>204
Androidのジャヴァモドキは正規のライセンスを受けていない違法な海賊版なんだよ
JavaスレでAndroidの質問をするのはバカが違法ダウンロードを自慢するようなもの
0215デフォルトの名無しさん
垢版 |
2018/06/08(金) 13:33:32.61ID:1PlqYTvd
>>214
JavaVMって独自に作っちゃいけないんだっけ?
0217デフォルトの名無しさん
垢版 |
2018/06/08(金) 13:37:08.24ID:1PlqYTvd
>>216
それはどういう法律に反するのか?
0219デフォルトの名無しさん
垢版 |
2018/06/08(金) 13:46:03.43ID:1PlqYTvd
>>218
同じ動きをする全く別のプログラムは著作権の問題はないよな?もしこれにあったら OpenJDK もあり得ないわけだし。
特許はどこにあるのか?それとその特許は OpenJDK の方では避けられているのか?
0220デフォルトの名無しさん
垢版 |
2018/06/08(金) 15:16:14.07ID:2yGpvne7
>>219
避けられてないよ
あくまで「OracleがリリースしたOpenJDK」に対して特許の利用が認められている
OpenJDKを勝手に弄って配布したら特許侵害
0221デフォルトの名無しさん
垢版 |
2018/06/08(金) 16:29:34.75ID:xsX40G/R
プログラミングではないのですが教えて下さい。

Androidのアプリで、
マップルという地図ソフトがあります。
起動後、地図データへのパスを求められます。
大容量の地図データなのでSDカードへ入れます。
と、そのパスの形式が
/storage/47D2-1300
みたいな感じで、
SDカード固有の数字で、「数字4桁-数字4桁」のディレクトリを調べないといけないのです。
「数字4桁-数字4桁」を調べるにはどうすればいいのでしょうか?
0222204
垢版 |
2018/06/08(金) 16:32:38.13ID:xsX40G/R
↑、失礼、間違えた。
Androidスレで改めて質問し直します。

>>212-214
どうもでした。
0223デフォルトの名無しさん
垢版 |
2018/06/08(金) 17:26:47.40ID:Ayrw+LdJ
すいません jar の作り方がよくわからないので教えてください

packege util の Util.class が
util/uti.jar にはいっていて

それを使っているメインプログラムがパッケージなしで

main / Main.java

にあるんですがダブルクリックするだけで動く jar を作るにはどうしたらいいんでしょうか
0225デフォルトの名無しさん
垢版 |
2018/06/08(金) 18:07:30.25ID:BDVSM83M
>>219
そうなのか?
OpenJDKはGPLだろ?
GPLに従う限り二次派生の作成も配布も問題ないはずだ
OpenJDKというJava実装はオープンで公開していながら
Googleに対してはJavaのAPIはOracleの著作だからお金払ってね♡
ってわけがわからないよ
0227デフォルトの名無しさん
垢版 |
2018/06/08(金) 18:33:06.83ID:Ayrw+LdJ
>>224
ぐぐっていろいろ変えてみてるんですけどうまくいかないんです

作ったフォルダの中でダブルクリックすると動くんですが
他のフォルダにうつすと動かなくなって
メインクラスがロードできないっていわれます

jarの作り方の記事自体はたくさんでてくるんですが
他のjarに依存する場合の書き方があまりでてこなくて
MANIFESTにクラスパスをかけばうまくいきそうなのにかいてもうまくいかなくて困ってます
0228デフォルトの名無しさん
垢版 |
2018/06/08(金) 20:22:18.43ID:tnZm4LxR
>>224 ググれクスに見えるな。やっぱ、ググレカスの場合は小文字じゃないとな。
0231デフォルトの名無しさん
垢版 |
2018/06/08(金) 21:37:01.47ID:uQFFSCdV
>>220
あれは GPL だけど特許はそのままのものなのか?
■ このスレッドは過去ログ倉庫に格納されています