★★Java質問・相談スレッド180★★ [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
プログラミング言語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質問・相談スレッド179★★
http://echo.2ch.net/test/read.cgi/tech/1476706523/ >>553
JSでi18nするライブラリぐらい普通に転がってるだろ >>527
これもV2Cから書き込んでるけど物が良いだけに更新無くなったのが悲しい
他に乗り換える事が出来る専ブラ見当たらない >>556
作ればいいんじゃないかな
ああ、でも、2chは制限あって面倒か
互換掲示板のみでいいならそんなに難しくはなかろう
面倒だけど すみません。超初心者なんですが、
<script>
function openWin2() {
window.open('https://A', 'left=0,top=0,width=520,height=650');
window.open('https://B' , 'left=0,top=0,width=520,height=650');
return ture;}
</script>
と記載し、リンクをクリックした際にAとBのサイトを開くようにしています。
AとBのサイトが上にこないように表示させたいのですが、どのような記載をすればいいですか?
スマホだとAとBがバラバラに表示されるので、常に後ろで開くようにしたいのですが、、
どなたかよろしくお願いします。 RxJavaの質問です。
ひとつのリソースをパイプライン中の複数個所で使用するためそれぞれ排他制御しようと
思うのですが、onNext()中でリソース待ちで処理をブロックするのって合法なんでしたっけ? javaじゃないんだが
javaeeやってる人もいるかと思い質問
jspでなぜかh:formが使えない
h:commandButtonは普通に使えているので宣言自体に問題はなさそうなんだが何でだろう?
因みにformは通る >>562
使えないってだけで状況わかるわけないだろ
どんな環境で何をしたら結果どうなってるのか書けや やさしいjavaから入って評判のスッキリわかるjavaも一通り読み通した
そろそろプログラミング言語java4版いけるだろうか?やっぱ本家本元で勉強すべきかなぁって
ちなみに同じくバイブルと言われてるeffective javaは図書館でパラ見してこれは手も足も出ないわってなった >>564
そこに行く理由がないような気がするなあ
ささっとSpring bootでハローワールドとかやってみては? Java7で終わった言語じゃね?
あとは着ぶくれさせて見た目を誤魔化してるだけで h:form ってことは JSF だよね。
ちゃんと f:view にいれてるか? >>564
マジレスすると、
『創るjava』を読んでnetbeansを使いこなせるようになりなさい なんか、俺が関わるの(プログラミング言語)すべてダメになるんだけど、
JavaEEを久しぶりに触ってみて、最近のJavaEEスゲエいいじゃんwwwwwwwww
Sunの頃の設定ファイル.xml地獄とは全然違うぜ!!と思っていて、うぉぉぉぉぉおぉぉおぉぉぉ、NetBeansも昔よりスゲエ使いやすいwwwwwwww
JavaFXもSwingなんかと比べ物にならねえ!!!!!!!!!!!!!!!!!なんて、思っていて、JavaEEのサンプルのために、Eclipse入れてみたら、
Eclipseは昔と同様に糞だなwwwwwwwwwwwwwとか思ってて、糞ウゼエと思ってて、やっぱ、昔のJavaの血を引くオプソ関連はダメだわ・・と思っていたら、
こんなニュース載ってるじゃん(;´Д`) 猛ダメポ・・・(´・ω・`)
【Oracle、Java EEをEclipse Foundationに寄贈する方針。名称も変更へ】
https://mag.osdn.jp/17/09/14/161500 Javaはあまりにも言語としてすぐれていた
だからつぶされる Eclipse
android用なら Android Studio 今時はIntelliJだな
VisualStudioを期待するとEclipseとIntelliJなんてカレールーで作ったカレーかインスタントカレーか程度のレベルだから、
そのつもりで期待しないで試すといい VisualStudioは出来が良すぎてな
Windowsも10になってからめちゃくちゃ強力になってるし
C#も驚異的なスピードで進化してる
マイクロソフトの仕事とは思えないほど飛躍してる
でもUIテーマが最高にダサいから人気は出ないんだな JAVAの仕事ってしたことないのですが
開発環境の主流はやはりEclipseなんでしょうか?
Android StudioとNetBeansなら触ったことあるんですが、
2つとも主流じゃないなら、勉強してもしょうがないかなと 今時オープンソースでないIDEなんてゴミだから
最近やたらC#はーとかJavaはめんどくさいーとか喚いてる初心者沸くけど
使えないなら使えないなりにもっと媚びへつらって教えを請えよアホ Javaがめんどくさいのは事実だしなあ
Javaは簡単だけどめんどくさい
C#は簡単で快適 C#はお前みたいな馬鹿用に作られた言語だからな
そら仕方ない いやいや
Javaコミュがバカだから使いにくいまま放置してるんでしょ またオタク同士でケンカしてるの?
これだから信者はイヤなんだよw 使いにくいと思ってるのはお前みたいな馬鹿だけ
>>577
NetBeansは触るだけ時間の無駄
まともなところはEclipse一択。泥は使う場面に遭遇したら覚えればいい EclipseはLinuxでも動くしC言語とか他の言語開発でも使えるからいいよな。 Eclipse, IntelliJ IDEA, Android Studio, NetBeans, Gradle
Groovy, Kotlin >>584
未だにλがどうのストリームがこうのと揉めてる時代遅れの人達でしょ
明らかにそっちの方がおかしいよ でも時代の先を行ってるはずのC#erも、その辺のプログラマのレベルでいえば、大したもん作ってるわけでも特筆するような生産性を叩き出してるわけでもないからなぁ どうなんだろね
ホントの成果って企業が隠してたりするからね 本当にコアの技術を支えてるとんでもない人たちは高級アセンブラであるCを愛用している JNIの質問もここでよいのですかー?
androidでJNIを使いました。
javaのStringをCへjstringで渡してGetStringUTFCharsでconst char*には変換できました
そこから別の関数Hoge(const char*)にGetStringUTFCharsで変換したポインターを渡すと
文字が無くなってしまう(android studioから見ると""と表示される)になってしまうのですが何が問題なのでしょうか?
strcpyでchar配列にコピーしてからHoge(const char*)に渡しても同じでした
JNIEXPORT void JNICALL nativeTest(JNIEnv *env, jobject thiz, jstring filename) {
jboolean copy = false;
const char *p = env->GetStringUTFChars(filename, ©);
Test(p);
}
void Hoge(const char * p) {
//*pが""になる
} ごめんなさい
上のTestって関数を呼んでた・・・・
JNIEXPORT void JNICALL nativeTest(JNIEnv *env, jobject thiz, jstring filename) {
jboolean copy = false;
const char *p = env->GetStringUTFChars(filename, ©);
Hoge(p); //間違ってた
}
void Hoge(const char * p) {
//*pが""になる
} >>591
ハード屋って言うのはVerilogとかVHDLとかを使う奴のことだろ >>594
グルると GetStringUTFChars() を呼び出す個所は
env->GetStringUTFChars(filename, ©);
ではなくて
(*env)->GetStringUTFChars(filename, ©);
のように書いてあるプログラムばかりが見つかるわけだが、JNIEnv が struct JNINativeInterface * ならば JNIEnv *env
は struct JNINativeInterface **env なわけで、にも拘わらず env->GetStringUTFChars(filename, ©); と書いたならば
コンパイルエラーにはならんのか? >>576
UIとか関係なくてたんに
PCからスマホにメイン市場が移ってるから
AndroidのJavaに開発者が集まってるんだろう
言語だけ見たらJavaよりC#の方が先進的だな
でもScalaやF#の方がさらにその先を行ってるけど >>595
コアの技術を支えてるとんでもない人たちは >>598
Cを使うようなハードウェア屋はそんなにコアではないだろ
わりと高レベルな部類 C#とJavaだとタイプ量がまるで違う
8になるとようやくλやstreamが使えるようになって多少改善されるけど
それでもまだまだコーディングを楽にする様々な言語仕様の差は大きい
両方使ったことがあってJavaが楽だなんて考える奴はちょっと頭がおかしい
それかC#を使ったことない食わず嫌いなんだろうね >>600
お前にとってプログラミングってのは指の労働なんだなw >>601
頭脳ろうだからこそ指の労働を減らしたい
そんな当たり前のことがわからないんだね
だからJavaとかいう冗長な言語をありがたがるんだろうなぁ >>600
ラムダ式って名前がついた記法であってλじゃないよ >>607
俺はパチスロの機種のことだと思ったぜ・・。 ラムダ式のラムダはλのことなんだし
ラムダ式をλって略して言っても、この場合普通の人は文脈からそれがラムダ式であることを理解できるだろ まだクソの役にも立たない引き籠りコンピュータオタク同士でケンカしてたのかよw >>609
CR機は知ってるがCRCなんてあったっけ? >>606
アホ
長いコードを読む労力に気が付かない >>570
盛者必衰
特に潰しにかかる企業が居たりすると >>602
じゃあC#がもっとも簡潔で優れた言語なの?
もっと強力な言語はあれど、あまり先進的でも使いこなせないし、俺程度ならこんなもんでいいかって妥協してC#使ってるだけでしょ
ま、なにが言いたいかというと、JavaもC#もプログラミング言語全体で括れば似たようなもんだし、
多少C#の方が強力なのが事実とはいえ別にお前が偉いわけでもすごいわけでもないんだから
いちいちJavaスレにドヤ顔しにこなくていいよ、C#ユーザー程度が どんな言語使おうが構わないから、仕様通りに動くもの作ってよ JavaスレでC#とかアホ御用達言語を力説するJavaが使えない低能とか滑稽すぎるw
はよ人並みに使えるようになれよ阿呆 >>617
動きのみを規定している中途半端な仕様か javascriptで
HTML側にoncickで一度でjsに行き
jsのクリックで
ダミーボタンをクリックさせて
ダミーボタンのアクションを発生させたいのですが
どうもダミーボタンのクリックが動かない
いい方法ありませんか? IDE無しでJava触ってる奴なんかおらんやろーwwwwww
IDE無しで素のテキストエディタだけで書けって言われたら逃亡するわ >>627
早くAPIリファレンスだけリリースして欲しいわ
検索窓はよ >>626
Java 学習中の頃は vi でやってたよ。確か20年ぐらい前。 java 7
Apache commons
の環境でstream apiの代替品ってありますか? 社員以外はネット接続不可の会社のプロジェクトで
秀丸をデフォルトエディタにするようにわざわざ規約にまで書いてるところあってストレスやばかったわ
使いずらいしグレップが話にならんレベルで糞だし時代に取り残された頭弱い社員いるとホントきついわ 頭がいいからお前らにネットを使わせなかったんだろ? >>631
俺は当時メンヘル無職で、4000円の秀丸がどんなけ欲しかったか・・・。メンヘル無職だったから、
当時の例の暗号も知らず・・・。 サーブレットやっていて質問あるのですが、
DAOって各テーブル毎にsearchやらinsertメソッド作らなきゃいかんのですか? jdk9がリリースされましたがモジュール・ルールのせいで、#!/bin/bashで起動できません。bash$ java -jar main.jar では起動できますが警告が出ます。
WARNING: An illegal reflective access operation has occurred
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
検索すると java --add-...のオプションで云々のようです。
使い捨てプログラムであってもこのようなjava9ルールに従うのも勉強するのも面倒です。java8以前でコンパイルしたものをbash;console;bat.shで警告なしで通常起動するには、結局どういう作法に則れば良いのでしょうか。適当なポインタをお示しください。 どのjavaアプリは内緒ですが、
WARNING: Illegal reflective access by ... to field sun.awt.X11.XToolkit.awtAppClassName
です。それとnetbeans8.2はjava9に対応してないようですね。
netbeans9も開発移管でドタバタしていて、もうnetebansとしてはリリースもされないかもしれません。がそのあたりの今後の事情もどうなっているんでしょうか。 >>646
それ
異論はあったけどそのシステム関数の呼び出し方はJavaa8までは認めて来たけどもうJava9じゃダメにすっから
ただ今すぐじゃなくていつか必ずね
ってエラーじゃなかったっけ?
対処はプログラム修正だけの記憶 再コンパイルですか?配布アプリや、ライブラリ同様、自作でないし、ソースもないのでそれは無理ですね。ソースがあってもそういう面倒な絶対にしません。
もうjava9はvb6 or vb.netのような使い方を提供しないのでしょう。使い捨てprogramming用途も目指さないのでしょう。これからjshell云々で勉強する人たちを思うと、なんか泣けてきますね。 ウチのならこんな感じ
肝は最後の行
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.monazilla.秘密 (file:秘密) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int)
WARNING: Please consider reporting this to the maintainers of org.monazilla.秘密
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release 多分これのことじゃないかと思ってる
最後の行は--illegal-access=warnとかjava --add-...のオプションで云々のことだろうけど
多分間違いなんじゃないあkと
https://builder.japan.zdnet.com/sp_oracle/35095997/
JDKの内部APIの大半が利用できなくなる(JEP 260)
JDKには、JDK外部からの利用を想定していないAPIが多数含まれている。
これらのAPIは隠蔽されておらず、ごく普通に使うことが可能であったため、少なからぬアプリケーションで使われてきた。
しかし、JDK 9からは大半の内部APIへのアクセスが不可能となり、アプリケーション開発において利用できなくなる。
ただし、以下に示すAPIについては、代替となるPublicなAPIが用意されるまで、例外的にアクセスが可能なまま残されることになっている。
sun.misc.Cleaner
sun.misc.{Signal,SignalHandler}
sun.misc.Unsafe
sun.reflect.Reflection::getCallerClass
sun.reflect.ReflectionFactory
アプリケーションが内部APIを使用しているかどうかは、JDK 8以降に付属するツール「jdeps」を使って調べられるが、
JDK 8のjdepsとJDK 9 EA(Early Access)版のjdepsは異なる結果を返す可能性があるため、
JDK 9 EA版のjdepsを使って確認することを推奨する。
また、JDK 9以降でも、実行時のコマンドラインのフラグによって元の振る舞いに戻せるという。 >>649
ClassLoader; setAccessible(T)も云々ありましたね。リリースノートに。
>>650
そういうお題目を聞きたいのではありません。java8以前のプログラムを、再コンパイルなしで、java9でも問題なく使うにはどうするのかということを聞いてます。要するに、java9のモジュール・ルールを完全無視しても問題ないように使うにはどうするのかということです。
相手の要求について、それへの読解力もなく、知能も低いなら、私のレスに、あなたの時間を使う、必要はありません。解法を知らないなら余計な口出しも時間の無駄なので不用です。 >java8以前のプログラムを、再コンパイルなしで、
>java9でも問題なく使うにはどうするのか
たぶん、Java8, Java9 のコンパイル済みバイトコードの互換性が無いんだろ jshellネタもお聞きしたかったんですが無理そうですね。検索したものを、自力で、写経など、して欲しいわけではないので。「だろう」など予測や、「だろ」など推論などのたぐいも興味ありまままません。
>>652
その低レベルで互換性がないんですかね。オプション(やモジュールファイルを書くことで)でどうにかなると思うんですけど。
「たぶん」ということは、そこを解説した(日本語などの)記事は、リリースの今まで、なかったんですか。
これほどの互換性破棄は、警告の含みを持たせても酷いですね。この様子だと、オラクルはジャバを数年で手放す感じです。モジュール化できたのでオラクルに不利益は無いです。JVMはどうするんでしょうか。 餌を欲しくて必死に尻尾を振るオモシロ生物を観賞できるのはこのスレですか? ■ このスレッドは過去ログ倉庫に格納されています