リリース時にAntを使用することにすれば、J2SDKのコンパイラを使用できるようになるが、この場合実装時とリリースのものとでは、コンパイルしてい
るコンパイラが異なることとなる。
>java -classpath jdtcore.jar
org.eclipse.jdt.internal.compiler.batch.Main -version
979 :デフォルトの名無しさん:04/08/29(日) 03:08
New!!
EclipseってJDKのコンパイラ使っていないというのを
http://pc5.2ch.net/test/read.cgi/tech/1093267533/43-
を読んではじめて知りました。
ところで、
コンパイラのバージョン情報などを調べるにはどうすればよいのでしょう?
やはりEclipseのバージョンが変わるとコンパイラのバージョンも変わるのですか?
また、Antを使うにしても、コンソールから実行するのとEclipseから実行するのとでは
コンパイラが変わっている、ということになるのですね…
980 :979:04/08/29(日) 03:10 New!!
>>979の
> また、Antを使うにしても、コンソールから実行するのとEclipseから実行するのとでは
> コンパイラが変わっている、ということになるのですね…
は忘れてください。認識間違っていました。すみません。
981 :デフォルトの名無しさん:04/08/29(日) 08:51 New!!
>>979
自分で好きなのに切り替えられるでしょ。
982 :デフォルトの名無しさん:04/08/29(日) 11:52 New!!
>>978 コードフォーマッタ使えよ。
983 :デフォルトの名無しさん:04/08/29(日) 11:58 New!!
>>979
Eclipseに含まれるコンパイラは
http://dev.eclipse.org/viewcvs/index.cgi/%7Echeckout%7E/jdt-core-home/howto/batch%20compile/batchCompile.html
の手順に従うとコマンドラインから起動できる。
このとき-versionオプションを使うとバージョン情報等取得できる。
984 :979:04/08/29(日) 12:48 New!!
>>981
どうやれば切り替えられるのでしょう?
出来ればコーディング時も実際稼動するときと同じコンパイラでコンパイルできた方が
嬉しいのですが…
(
今だとコーディング時->Eclipseのコンパイラ、実稼動時->
J2SDKのコンパイラ、
になってしまっているみたいなので。)
985 :デフォルトの名無しさん:04/08/29(日) 13:04 New!!
>>984
>(今だとコーディング時->Eclipseのコンパイラ、実稼動時->J2SDKのコンパイラ、
>になってしまっているみたいなので。)
979のとこで現在こういう流れになっているということは、979は実稼動直前に
javacでコンパイル作業を行っているわけだが、それどういうふうにやってるの?
もし
antでやっているのなら、そのbuild.xmlをプロジェクトのビルダの
Java
Builderと入れ替える。それでコーディング時もjavacでコンパイルされる。
986 :979:04/08/29(日) 13:31 New!!
>>983
2.1.3と3.0.0で試してみました。
2.1.3:
Eclipse Java Compiler 0.319_R21x, Copyright IBM Corp 2000-2003. All
rights reserved.
3.0.0:
Eclipse Java Compiler 0.315_R21x, Copyright IBM Corp 2000, 2004. All
rights reserved.
あれ?3.0.0の方がバージョン低い?
ともかく、やはり
Eclipseのバージョンによってコンパイラのバージョンも
変わってしまうのですね…
>>985
すみません、少し嘘ついてました。まだ実際にはEclipseで開発行っているわけではなく、
導入検討中の段階です。なので
> コーディング時->Eclipseのコンパイラ、実稼動時->J2SDKのコンパイラ、になってしまうのではないでしょうか?
が正しい表現でした。
で、
実際の開発では、コーディング時はEclipseのメニューからコンパイルして
デバッガで走らせて、
とするのではと考えており、なおかつ最終的にAntでビルドを行うとすると
実際にリリースするものとデバッグするものは別物ということになるの
では、
と心配しているわけなのです。
Eclipseのメニューからビルドをしないようにして、全てAntで行うようにすれば
問題は解決するのでしょうか。
987 :デフォルトの名無しさん:04/08/29(日) 13:48 New!!
>>986 なんかあやしいなあ。R3.0系のコンパイラのバージョンは
v0.4xx。決してv0.3xxがでることはない。正しくは
$ java -cp jdtcore.jar org.eclipse.jdt.internal.compiler.batch.Main
-version
Eclipse Java Compiler 0.449, Copyright IBM Corp 2000, 2004. All rights
reserved.
つーか、
>3.0.0:
>Eclipse Java Compiler 0.315_R21x, Copyright IBM Corp 2000, 2004.
All rights reserved.
これ、R21xのタグついてるってことはR2.1.xのメンテナンスブランチから
持ってきたjdtcoreってことなんだけど、やってること大丈夫?
で、
心配事の本質が単に「コーディング時とリリース時に使われる
コンパイラが違うのが困る」というだけなら、
(1)コーディング時にSDK中のjavacを使う。
(2)リリース時にeclipse中のコンパイラをantから呼び出す。
の二通りの解決法が考えられるが、どちらも可能。
(1)の方法だとJavaエディタの支援機能の設定とjavacの設定が
ずれるとかなりはまるから、できれば(2)だろうね。
>Eclipseのメニューからビルドをしないようにして、全てAntで行う
ようにすれば
>問題は解決するのでしょうか。
それでもいいけど、Eclipseのビルドプロセスは自分でカスタマイズできて
Eclipse中のコンパイラを走らせる代わりに任意のantスクリプトを
走らせることができる。こっちのほうがわずらわしくないかもね。
988 :デフォルトの名無しさん:04/08/29(日) 13:55 New!!
次ぎスレ建てまだー?
989 :979:04/08/29(日) 14:46 New!!
>>987
> >>986 なんかあやしいなあ。R3.0系のコンパイラのバージョンは
> v0.4xx。決してv0.3xxがでることはない。
こちらに関しては、もしかすると下のURLで紹介されていた非公式日本語パッチ
http://www.eclipsewiki.net/eclipse/?%C6%FC%CB%DC%B8%EC%B2%BD#content_1_0
を入れたからかもしれません。後で追試しておきます…
> (1)の方法だとJavaエディタの支援機能の設定とjavacの設定が
> ずれるとかなりはまるから、できれば(2)だろうね。
(2)ということは、一貫してEclipseコンパイラを使用しろ、ということですね。
色々と新しい知識を得られました。
もう少し検討してみます。ありがとうございました。
最近のコメント