2013-02-11 10 views
15

私が使用しているモジュールはJava 1.7でコンパイルされている必要があり、1.6しか持っていません。「サポートされていないmajor.minorバージョン」を防ぐために、Play Framework 2.0のjavacコンパイルバージョンを設定するにはどうすればよいですか?

モジュールを1.6などの特定のバージョン用にコンパイルしたい場合、どうすればそれをPlayで設定できますか? Framework 2.0を使用して、「サポートされていないmajor.minorバージョン」のエラーを防ぐことができます。

再生中! 1.xでは、application.confに "java.version = 1.6"を設定できます。

私はPlayでそれを想定しています! 2.xおそらくsbtのどこかに設定する必要がありますが、どこに/どのように?

答えて

0

私が唯一の解決策は、プロジェクトのルートに build.sbtファイルを作成し、

JAVAHOMEを追加することだと思う:一部(ファイル( "path_to_your_jdkを"))=

+0

私はちょうど蟻のようなバージョンを設定したいtarget = "1.5" – poornerd

+0

私は可能ではないと思う – MaFo

8
ファイル プロジェクト/ Build.scala

、あなたは、Java 1.6でコンパイルしたい場合は、以下の設定を追加します。

val main = play.Project(appName, appVersion, appDependencies).settings(
    // Force compilation in java 1.6 
    javacOptions in Compile ++= Seq("-source", "1.6", "-target", "1.6") 
) 
+0

これは有望そうですね、ありがとう! – poornerd

+0

とここに私の[ブログ](http://www.poornerd.com/2013/07/25/how-フレームワークモジュール/) – poornerd

1

私は、これを考え出したが、あなたのbuild.sbtファイルの一番最後に

javaHome := Some(file("path_to_your_jdk")) 

を置きます。 "playJavaSettings"の後ろに置いてください(あなたのbuilt.sbtにこの行がある場合)。

あなたのSDKに割り当てられた権利のパスを持っていることを確認し、次のように入力することによって、これを確認することができます。

java-home 

をプレイまたはアクチベーターコンソールで。

はまた、あなたがすべての以前にコンパイルのリソースを取り除くために、あなたのコンソールに

clean 

を実行してください。

今あなたが行くように良いことがあり

compile 

を使用してコードをコンパイルします。私はこれが助けて欲しい! build.sbtファイルに

javacOptions ++= Seq("-source", "1.6", "-target", "1.6") 

を追加

17

は(私の場合、それはJDK 8を構築するために1.7だった、透明であるように)私のために働きました。

+0

私は1.7はJDK 7でビルドし、1.8はJDK 8でビルドすることを意味します。間違っていますか? – behzad

関連する問題