gpt4 book ai didi

java - 如何在Android Studio项目中设置Java库的源版本

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:24:28 24 4
gpt4 key购买 nike

我有一个 Android 项目,分为纯 Java 库和 Android 应用程序。我正在使用 Gradle Retrolambda这样我就可以编写 Java 8 代码了。

Android Studio 1.3 正确识别了我设置为 JavaVersion.VERSION_1_8 的 Android 模块中的 android.compileOptions.sourceCompatibility

现在我想让 Android Studio 意识到 Java 模块也是 Java 8。我已经尝试过(在 Gradle 脚本的根目录中,在 apply plugin 'java' 之后):

  1. sourceCompatibility = 1.8 但不起作用。 Gradle 正确编译,但 Android Studio 显示警告(“未使用赋值”)并假定使用 Java 6。

  2. sourceCompatibility 1.8 无法编译。

如何让 Android Studio 在不诉诸“设置源版本”快速修复的情况下识别这一点?还是暂时没有实现?

编辑

澄清一下,整个项目确实使用./gradlew assembleDebug 编译。问题在于 Android Studio 源代码突出显示。

我的Java模块build.gradle如下:

buildscript {
repositories {
mavenCentral()
}

dependencies {
classpath 'me.tatarka:gradle-retrolambda:3.2.0'
}
}

repositories {
jcenter()
mavenCentral()
}

apply plugin: 'java'
apply plugin: 'me.tatarka.retrolambda'

sourceCompatibility = JavaVersion.VERSION_1_8

dependencies {
compile 'io.reactivex:rxjava:1.0.12'
compile 'io.reactivex:rxjava-string:1.0.0'

compile 'joda-time:joda-time:2.8.1'

testCompile 'junit:junit:4.12'
}

retrolambda {
jdk System.getenv("JAVA_HOME")
defaultMethods true
incremental false
}

这是 Android Studio 给我的: Android Studio highlighting error

最佳答案

在你的 java 模块 build.gradle 中编写如下代码:

    buildscript {
repositories {
mavenLocal()
mavenCentral()
}

dependencies {
classpath "me.tatarka:gradle-retrolambda:3.2.0"
}
}

apply plugin: 'java'
apply plugin: 'me.tatarka.retrolambda'

repositories {
mavenCentral()
}

dependencies {


}

retrolambda {
jdk System.getenv("JAVA8_HOME")
defaultMethods true
incremental false
}

关于java - 如何在Android Studio项目中设置Java库的源版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31870426/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com