1

Java1.5プロジェクトをJava1.4に書き直す必要があります(1.5を飲み込めないツールがいくつかあるため、書き直しが必要です)。

1.4でコンパイルするには、これらのスニペットをどのように変更すればよいですか?そのためのツールはありますか?

private FooList<Bar> list = new FooList<Bar>(...);

public List<Bar> function(Baz baz) {...}

public Iterator<Bar> iterator() {...}

編集:ソースを書き直す必要があります。.jarは私のプロジェクトには関係ありません。私は、リライトが正しく、コンパイラーによって受け入れられる必要があることを表現するためにコンパイルについて言及しました。

4

5 に答える 5

3

Java5.0クラスをJava1.4に変換するツールを使用します http://retroweaver.sourceforge.net/

しかし、あなたの質問に答えるためにあなたは試すことができます

https://stackoverflow.com/questions/603828/java-5-to-java-1-4-source-code-backporting-tool

https://stackoverflow.com/questions/547872/converting-java-1-5-source-into-1-1-source

もう1つのオプションは、システムをアップグレードすることです。Java 6はまもなくEOLになり、Java1.4は10年前のものです。

于 2012-04-29T16:28:26.403 に答える
1

ツールを使用してDeclawerのようなツールを変換しますが、基本的には、Java 1.5ソースのディレクトリを介して実行され、Java1.4と同等のソースを出力します。1.5の機能すべてをサポートしているわけではありません。

于 2012-04-29T16:34:32.720 に答える
0

Java 1.4はジェネリックスをサポートしていないため、次のように終了します。

public List function(Baz baz) {...}

もちろん、リストからオブジェクトを取得すると、オブジェクトが取得されるため、

Bar bar = function(null).get(0)

動作しません(オブジェクトをバーに割り当てるには、明示的なキャストが必要です)。

于 2012-04-29T16:30:35.453 に答える
0

宣言の型を取り除きます。これらの型のオブジェクトを返すメソッドの場合は、削除した型にキャストを追加します。

于 2012-04-29T16:31:11.537 に答える
0

「ちょうど」1.4バイナリが必要な場合は、RetroWeaver(http://retroweaver.sourceforge.net/)を使用してjarを変換できます。Java 1.4を対象としたいくつかのプロジェクトで使用しましたが、うまく機能することがわかりました。

于 2012-04-29T16:32:57.387 に答える