2011-06-03 16 views
2

私は宿題の1つに小さなJavaアプリケーションを作成しました。問題は教師がJREをインストールしていない可能性があることです。教師がJREをインストールせずに実行できるように、私はどのようなIDをウィンドウexeファイルにjavaファイルをコンパイルする。cygwinを使用してjavaファイルをwidowsネイティブコードにコンパイル

私はcygwinでgcjツールを使用していますが、出力アプリケーションにはcygwin1.dllが必要です。どのように私はこれを避けることができる、IEのパッケージは、アプリケーションが1つのファイルに必要なすべてのものを、教師は何もインストールする必要はありません。

答えて

1

Cygwinの代わりにMinGWを使用してください。

そして、10-MiB実行可能ファイルを用意してください。

+0

MinGWにはJavaコンパイラ(したがって、 "Min"ビット)はありません。あなたはポートからそれを得ることができるかもしれませんが、あなたはソースからビルドされます。 – paxdiablo

+1

@paxdiablo:そうではありません。[Java *コンパイラを持っています](http://www.mingw.org/wiki/Compile_with_gcj)。 (ダウンロードについては、[ここ](http://sourceforge.net/projects/mingw/files/MinGW/BaseSystem/GCC/Version4/Previous%20Release%20gcc-4.4.0/)を参照してください)。あなたはGUIのもの(Swingなど)をしたいのですが、実際にはうまくいきません。 – Mehrdad

+0

最新のビルド(4.5のいずれか)には含まれていません。http://stackoverflow.com/questions/5001661/mingw-gcj-for-windows/5001759#5001759 - その回答に記載されているように、あなたは_can_ go 4.4ストリームに戻ります。本当にJavaのサポートが必要な場合は、おそらくそれほど悪い解決策ではありません。 – paxdiablo

1

教師にJREをインストールするよう依頼するのはなぜですか?あなたがを許可されている場合は、がJavaを使用することを教えてください。が必要です。あなたの宿題を適切に評価するためのツールが必要です。

でJavaを使用できない場合は、よく考えていましたか?

+0

多分、彼/彼女はソフトウェア関連の教師ではなく、数学の教師です。 – Enrique

+1

@Enrique、それはうまくいけば問題ではない。教師が特定のツールを使用することを明示的に許可している場合は、評価環境を提供するのは教師の責任です。そうしていない(少なくとも私が大学に行った時は、まあまあだった)、懲戒処分の根拠になった。いずれにしても、求めることは正しいことです。それは教師に通知し、教師がそうしない場合には、学生が再作業することを可能にする。 – paxdiablo

+0

はい、これは状況ですが、これはコンピューティングアルゴリズムコースであり、教師は実際にはプログラムに関してあまり気にしません。私はJavaを学んでいるので、C++でもjavaでも読めません。 javaと一緒に行く。 – danny

0

アプリケーションにはcygwin1.dllが必要です。

.dllファイルのクラスタで.exeを出荷することは、Windowsでは標準です。

Microsoft Visual Studioを使用している場合は、Visual Studio再頒布可能ランタイムから一部のライブラリと共にプログラムも出荷する必要があります。 (静的にリンクしない限り)Windows上のほとんどの主要アプリケーションには、dllファイルのインストールディレクトリがいっぱいであり、それらなしでは実行されません。

2016年の中頃、CygwinプロジェクトはライセンスをGPLからLGPLに変更しました。つまり、クローズドソースで自由に再配布可能なプロプライエタリなプログラムなど、通常のGPLと互換性のないライセンスを持っていても、プログラムをcygwin1.dllにリンクして再配布することができます。 (もちろん、cygwin1.dll自身をどのように再配布しているかについては、LGPLに準拠している場合)。

IEパッケージすべてのことをアプリケーションは1つのファイルにする必要があるので、教師は何もインストールする必要はありません。

何もインストールしない唯一の方法は、すべてのファイルを持っているではありません。 1つのファイルがある場合は、どこかに置く必要があり、それはインストールの定義を満たします。 Windowsでは.dllに依存する.exeファイルがある場合、そのファイルが同じディレクトリに置かれていることを確認するだけです。プログラムがあまりにも重要でない場合、完全に吹き飛ばされたインストーラを開発することを保証するために、この要件を.zipファイルに入れることによって、この要件を容易に満たすことができます。

教師が.zipファイルをデスクトップまたはダウンロードディレクトリに解凍します。フォルダが表示され、そのフォルダにプログラムがあり、dllです。プログラムは呼び出され、dllをロードすることができます。非常に簡単、考える必要のない。

関連する問題