2016-07-20 8 views
0

Java 1.7を使用するJava Eclipseでプロジェクトを作成しました。しかし、私はいくつかの特定のモジュールをJava 1.8を使って実行する必要があります。同じプロジェクトで2つのJavaバージョンを実行するにはどうすればよいですか?

可能ですか?どうやって?

+4

すべてのモジュールで1.8を使用できませんか? –

+1

1.8 1.7と下位互換性がなければ1.8しか必要ありません。 – npinti

+0

2つのJVMを起動し、ソケットのようなプロセス間通信を使用することができます。しかしそれとは別に - いいえ、より高いJavaバージョンを使用してください。 –

答えて

0

簡単に言えば、そうしてはいけません。

の場合は、プロジェクトのことです。プロジェクト内のすべての「コンポーネント」が互換性のあるレベルにあることを確認する必要があります。

あなたの場合:コンポーネントAにJava 1.8が必要な場合。他は1.7でうまくいきます...そして、あなたは前進して1.8を使うべきです(古いバージョンのJava用にコンパイルされたライブラリを使用することができます;それらを更新/再コンパイルする必要はありません)。そして、あるパートに1.8が必要な場合は、もう1つは1.7しか動作しません...それに簡単な解決策はありません。

重要なことは、このプラクティスから逸脱した場合、後で "単一"プロジェクトを実行するために複数のJVMを使用する必要があります - それはもちろん矛盾です。

代替は、あなたが小さな部分に今持っている(最近はあなたがmicroservicesそれらを呼び出すだろう)とは、異なる技術を使用して、アプリケーションのさまざまな部分を実行することを可能にするアーキテクチャを定義プロジェクトを分析することです。しかし、他の人が指摘しているように、これは全く新しいレイヤーをの複雑さに追加します。

0

Javaコンパイラレベルを設定することができますプロジェクトの賢明なモジュールではなく賢明です。 あなたのケースでは、両方のバージョンをサポートするコンパイラレベル1.8を設定する必要があります。 eclipseでは、以下のオプションでコンパイラレベルを設定できます。 プロジェクト - >プロパティ - > Javaコンパイラを右クリックします。

関連する問題