アプリ版:「スタンプのみでお礼する」機能のリリースについて

eclipseのバージョンによって作成されるJarファイルは異なる?

二台のPCにJava開発環境を構築しようとしています。
A環境
OS:Windows2003 Server
Java:jdk1.4
eclipse:ver3.2.0

B環境
OS:Windows2003 Server
Java:jdk1.5
eclipse:ver3.2.2

eclipseのプラグインは統一されていません

Javaプロジェクトを作成してソースファイルを入れ、Antによるビルドを行いました。
(ソースは全く同じもの、コンパイルはbuild.xml内の"javac"、Antはeclipse導入時に入っていたものです)
作成されたJarファイルを解凍し、中のclassファイルを比較ソフト「DF」で比較したところ、
一部のclassファイルが不一致となりました。

Ant実行したbuild.xmlファイルは同じものを使用し、
build.xmlを右クリックメニュー→「実行」→「外部ツールの構成」の設定内容は同じです。
また、eclipseメニュー→「ウィンドウ」→「設定」→「Java」→「インストール済みのJRE」に「jdk1.4.2_15」を設定し、「コンパイラー」や「ビルド・パス」も同じ設定です。

同じと思える環境で、なぜ異なるclassファイルが作成されてしまうのでしょうか?

A 回答 (1件)

一般的には、実行結果が異なるのでしたら問題です。



しかしユーザープログラム最終実行結果が同一の範囲での実行効率化、サイズ縮小化等が図られていると思います。

またランタイム変更に伴いサブルーチン名変更、インターフェース変更等も考えられると思います。

例えば "java バージョン間オブジェクト互換性" 等としてサーチ下さい。

Java SE 6 の互換性
java.sun.com/javase/ja/6/webnotes/compatibility.html
等が参考になると思います。
    • good
    • 0
この回答へのお礼

さらにjdkとeclipseのバージョンも合わせてみましたが
やはりclassに差異があると判定されてしまいました。

実行させた結果は同じだったのでこれで良いということになりました。
ご回答ありがとうございました。

お礼日時:2010/05/20 21:29

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!