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

このQ&Aのポイント
  • eclipseのバージョンによって作成されるJarファイルは異なるのか疑問
  • 二つのPCの環境を比較し、異なるclassファイルが作成されている
  • 環境設定やビルドツールの設定を確認しても一致しない原因がわからない
回答を見る
  • ベストアンサー

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

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ファイルが作成されてしまうのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • ninoue
  • ベストアンサー率52% (1288/2437)
回答No.1

一般的には、実行結果が異なるのでしたら問題です。 しかしユーザープログラム最終実行結果が同一の範囲での実行効率化、サイズ縮小化等が図られていると思います。 またランタイム変更に伴いサブルーチン名変更、インターフェース変更等も考えられると思います。 例えば "java バージョン間オブジェクト互換性" 等としてサーチ下さい。 Java SE 6 の互換性 java.sun.com/javase/ja/6/webnotes/compatibility.html 等が参考になると思います。

superss28
質問者

お礼

さらにjdkとeclipseのバージョンも合わせてみましたが やはりclassに差異があると判定されてしまいました。 実行させた結果は同じだったのでこれで良いということになりました。 ご回答ありがとうございました。

関連するQ&A

  • javaのコンパイルエラー!!jarを探しています(*_*;

    javaのコンパイルエラー!!jarを探しています(*_*; eclipse ver 3.3.1.1 java ver 1.6 jdk1.6 antでビルドをかけています。 ※上記の環境 でも weblogicのタスクで com/bea/xbean/common/concurrentreaderhashmap のクラスが見つかりません って怒られます。 このパスでこのクラスを持った jarを知ってる方いらっしゃいましたら 教えてください。 もう かなり探してるんですけど… 見つかりませんでした(*_*) まぢで困ってます よろしくお願いしますm(__)m

  • Eclipseを用いたJARファイル作成について

    Eclipseを用いてjavaのプログラムをしているのですが アプレットのプログラム"のみ"がJARファイルにエクスポートできずに困っております。 [プロジェクト]を右クリック→[エクスポート]→[JARファイル]に設定するところまでは良いのですが 「JARマニフェスト仕様」というページの、「アプリケーションのエントリー・ポイントのクラスを指定」という項目で、メインクラスを参照しても アプレットのプログラムのクラス"のみ"が表示されていないのでエクスポートできません。コンソールのプログラムのクラスは表示されているので おそらく、アプレットにはmainメソッドを用いていないので表示されないのだと思うのですが・・・。 mainメソッドがないプログラムの場合はどうすれば良いのでしょうか・・・? 自分なりに、↓など調べてみたのですがどこがいけないのかわかりません。 http://mailsrv.nara-edu.ac.jp/~asait/java/applet/applet.htm http://sunjava.seesaa.net/article/57546363.html どこをどうすればこの場合、EclipseでJARファイルが作成できるのか、詳しく教えていただければ助かります。 一応、アプレットは↓の簡単なプログラムを試してみました。実行は出来ます。 import java.applet.Applet; import java.awt.Graphics; public class Sample extends Applet { public void paint(Graphics g) { g.drawString("こんにちは",10,10); } }

  • jarファイルの作成

    はじめまして。 さっそく質問させていただきます。 Javaでswingを使用してGUIアプリケーションを作成しました。 .exeファイルのようにダブルクリックで起動できるように、jarファイルを作成したのですが、開こうとしてファイルをダブルクリックすると、「failed to load Main-Class manifest attribute from (C:からjarファイルまでの階層)」というエラーがでて実行することができません。 階層は C:\a\b フォルダ b の中に「c.class」「d.class」「MANIFEST.MF」の3つがあります。 c.classがmainメソッドを持っているのでマニフェストファイルには、「Main-Class: c」と書き込み、コマンドプロンプトから「jar cvfm c.jar MANIFEST.MF *.class」と入力、jarファイルが作成されたのですが、ダブルクリックすると上記のエラーがでてしまいます。 どのようにすればエラーなく実行することができるでしょうか? 開発環境は、Windows XP SP3, jdk1.6.0_16, 統合開発環境は使用していません。 よろしくお願いします。

    • ベストアンサー
    • Java
  • eclipseをバージョンアップしたら、build.xmlでエラー

    eclipseをバージョンアップしたら、build.xmlでエラー eclipseを、3.2から3.5にインストールし直したところ、3.2で正常にビルド/動作していたのにエラーメッセージが付くようになってしまいました。具体的には、antを使ったbuild.xmlの一行目で、以下の行です。 <?xml version="1.0" encoding="utf-16"?> エラーメッセージは、「プロローグにコンテンツは許されません。」というものです。 ソースコードを含め、build.xmlも何も変更していませんし、半角のつもりが全角だったということもありませんでした。ためしに「utf-16」を「utf-8」に変更すれば、エラーはでなくなりました。ですが、ソースコードはUTF-8ではなくUTF-16で書かれているので、この状態では実行できてもおかしくなりますよね?eclipseメニューの「編集」-「エンコードの設定」では、デフォルトでもUTF-16になっています。 このエラーが出る原因は何でしょうか?どうすれば解決するでしょうか。また、どこかの設定を確認する必要がありますでしょうか。 ちなみに3.6で試してみても同じ現象が出ました。それ以外のバージョンは試していません。 当方、javaやeclipseの使用経験は、あまりありません。

    • ベストアンサー
    • Java
  • [Eclipse] jar出力時に自動でファイル収集

    [Eclipse] jar出力時に自動でファイル収集 Eclipseでjarファイルを出力する際に、指定したソースコード(のclassファイル)を含めると、そのコードでインポートしているソースコード(のclassファイル)も自動でjarに含まれるようにできませんか?

    • ベストアンサー
    • Java
  • Ecliplseでは動作するが、JARファイル実行時には動作しない

    Ecliplseでは動作するが、JARファイル実行時には動作しない WINDOWS(XP)環境にて、 JDK、ECLIPSE共に現在の最新のものを使用してゲームを作成しています。 (jdk1.6.0_21、Eclipse(Ver 3.6)) Eclipse上では実行すると正常に動作しますが、 File>EXPORT>JAVA>JAR fileを使用して、JARファイルを作成すると、 (エクスポート時のウィザード設定は全てデフォルト、 JARファイル保存先とmainクラスのみ指定) 作成したJARファイルは起動するだけで何も処理が始まりません。 (JARファイル自体は作成されるが、実行後フレームだけ表示される) エラーの切り分けなど、方法がわからないため、ここから先に進めないでいます。 例として何かエラーになりうる要素があるとすれば、御教授お願い致します。 また、フォルダ階層が下記のようになっている場合、 コマンドプロンプトからのjarファイル作成は どのようなコマンドになるのでしょうか。 御教授お願い致します。 /******************************************************************************* プロジェクトフォルダ    ?.settings        ?org.eclipse.jdt.core.prefs    ?bin        ?パッケージ名称              ?CLASSファイル、各材料(midi、wav、gif、png、jpg等)    ?src        ?パッケージ名称              ?JAVAファイル、各材料(midi、wav、gif、png、jpg等)    ?META-INF        ?.mfファイル    ?.classpathファイル    ?.projectファイル *******************************************************************************/

    • ベストアンサー
    • Java
  • Eclipseでiアプリのjarファイルが作成されない

    おたずねします。 iアプリ作成用にj2sdk1.42_16とiDkDoja5.1とEclipse3.1.1の組み合わせ設定しました。コードを入力して、EclipseのプロジェクトからDoJa-5.1のADF/トラステッド動作設定を選んでAppNameとAppClassを入力しメニューの実行を選択し、起動構成画面で必要事項を入力し、実行を押しても次のようなエラーメッセージが出ます。 com.nttdocomo.eclipse.DoJaBuildException:Faild create jar C:\workspace\SampleAppli\bin\Sample1.jar ちなみにjamファイルはbinフォルダに作成されていますがjarファイルはありません。Eclipseを使わず、iDkoja5.1だけで作成するとjarもjamもきちんと作成されています。ご指導おねがいいたします。

    • ベストアンサー
    • Java
  • Eclipseで、配布可能なJARファイルを作成する方法が解りません。

    Eclipseで、何も無いウインドウを開くというだけのアプリケーションを作ろうとしました。 ライブラリに、 org.eclipse.swt.win32.win32.x86_3.2.1.v3235.jar を追加しております。 配布できる形式にしたいため、Jarファイルを作成しました。 プロジェクトにMETA-INFというフォルダを作成し、そこに「Manifest.mf」というファイルを作成し、以下のように記述しました。 Manifest-Version: 1.0 Class-Path: "C:\eclipse\plugins\org.eclipse.swt.win32.win32.x86_3.2.1.v3235.jar" Main-Class: view.TestWindow ちなみに、「view.TestWindow」というのがmainメソッドのあるクラスの名前です。 JARファイルをエクスポートして、コマンドライン上から以下のように入力しました。 > java -jar TestWindow.jar 結果は、以下のようなエラーが表示されました。 Failed to load Main-Class manifest attribute from TestWindow.jar 多分、「Main-Class」の情報がマニフェストファイルから見つからないと言っているんだと思いますが、Eclipse上からエクスポートする際にはちゃんと場所を指定しています。何が問題なのか解りません。 将来的には、違うマシン上で動作するアプリケーションを作りたいと思っているのですが、最初でいきなり躓いてしまいました。 どなたか教えて頂けないでしょうか。

    • ベストアンサー
    • Java
  • jarファイルが入力ファイルを読み取ってくれません

    現在java勉強中の初心者です。 eclipseを使っているのですが現在ある数値データ(.txtファイル)を読み込み計算する プログラムを作成しています。 eclipseから実行する分には正しく動作するのですがeclipseを使ってjarファイルを生成し ダブルクリックで実行したところテキストファイルが読み取れてないようなのです。 ちなみにjarファイルと同じディレクトリに読み込みたいテキストファイルを置いて ダブルクリックで実行すると正しく動作しました。 これについてjarファイルだけでもうまく動作させる方法を知っている方は 教えてください! それともうひとつ質問ですがeclipseの場合、読み込ませたいテキストファイルは プロジェクト直下に置いているんですがこれでいいんでしょうか? ソースやclassファイルと同じ場所に置くと読み取ってないようです。

  • .jarファイルを作りたい

    JAVAど素人です。 必要があってソースも同時に公開されているフリーのjavaアプリケーションをいろんなフリーソフトを試しながら何とかソースファイルの○○.javaを編集しました。 それをIE上で動くようにするには.jarにコンパイルする必要があるとのことでそれをソースファイルを基に作りたいのですがどうしていいのか分かりません。 いろんなソフトでコンパイルをしようとしましたがうまくいきません。 そのたくさんダウンロードして試している中でEclipse3.3というソフトでトライしようとしているのですが、ついに完全に行き詰まってしまいました。 どなたかこの.javaファイルを.jarという1つの実行可能なファイルにコンパイルする方法を教えてください。 もちろん別のソフトでもかまいませんが、フリーソフトでお願いしたいです。 (JPEditとmakeJadJarというソフトではランタイムVB6.0をインストールして実行したのですが、うまくいきませんでした。JDK 5.0 update12もインストールしています)