Gradleに切り替えることなくアンドロイドスタジオにAndroidアプリを移動しました。今私はGradleに移動したい。このアプリはGradleに切り替える前にAndroid Studioでコンパイルされますが、今度はGradleをすべて設定したので、String Switch Statementsやダイヤモンド演算子はコンパイルされません。私は取得していますエラーは私が仕事でAndroidスイッチでgradleがJRE7コードの機能をコンパイルしない
System.getProperty("java.version")
を印刷することにより、JRE 7上で実行していることを確認してきた
Gradle: error: strings in switch are not supported in -source 1.6
(use -source 7 or higher to enable strings in switch)
です。出力はほとんど私を混乱させる何
1.7.0_25
のは、「1.6を-source」と「-source 7を使用する」との間に不一致です。しかし、私はこれらの両方がJava SDKのための名前であることを知っています。多分タイトルがちょうど混ざっています。
設定が必要な設定はありますか?またはこれはGradleでは不可能ですか?そうでなければ、なぜGradleなしで動作するのか混乱している。
私のプロジェクトのGradle版がないと、デフォルトのAndroid Studioビルドが実行されることに注意してください。私はそれを構築するためのantスクリプトまたはmavenスクリプトを書いていませんでした。そのうちの1つがビルドの方法かもしれませんが、私はそれらのためのプロジェクト固有のファイルを持っていません。 Android Studioの.imlファイルだけです。
UPDATE 私はbuild.gradleアンドロイド{}セクション
compileOptions {
sourceCompatibility = org.gradle.api.JavaVersion.VERSION_1_7
targetCompatibility = org.gradle.api.JavaVersion.VERSION_1_7
}
に以下を追加してみましたが、.classファイルは、ビルドに失敗し、それがAPKに含まれていませんでした。あなたのbuild.gradle
のandroid
セクションに次の行を追加して、Java 7に既存のAndroidアプリ/ライブラリモジュールをアップグレードすることができますthis post
あなたは今、問題を解決しましたか? –
実際に私は試してみました。私はコード内のそれらの場所のすべてをJRE6準拠に変更し、ちょうどそれと一緒に暮らしています。私ができるならそれを働かせたいと思っていますが、私はそれに慣れることができません。 – laochiv
私はこれを解決しました。なぜなら、他のすべてのメソッドが失敗し、あなたがなぜかを知るのが面倒だとすれば、ハンマーハンマーのような解決策があるからです。http://stackoverflow.com/a/21051506/1418097 –