【发布时间】:2015-12-24 03:34:33
【问题描述】:
我使用终端安装了一个新的 Android Studio 副本,但是当我创建一个新项目时它给出了错误 “无法确定 Java 版本”。 JDK 和 SDK 都已安装。 Android Studio 已更新至最新版本。 我正在使用 Ubuntu 14.04 LTS
【问题讨论】:
标签: java android android-studio
我使用终端安装了一个新的 Android Studio 副本,但是当我创建一个新项目时它给出了错误 “无法确定 Java 版本”。 JDK 和 SDK 都已安装。 Android Studio 已更新至最新版本。 我正在使用 Ubuntu 14.04 LTS
【问题讨论】:
标签: java android android-studio
改变这个:
targetCompatibility 'JavaVersion.VERSION_1_8'
sourceCompatibility 'JavaVersion.VERSION_1_8'
对此:
targetCompatibility JavaVersion.VERSION_1_8
sourceCompatibility JavaVersion.VERSION_1_8
【讨论】:
我遇到了同样的问题,但在 Windows 7 操作系统上。这是因为多个版本的 java 存在于同一位置C:\Program Files\JavaJava 5、7、8 和 9。虽然环境变量 JAVA_HOME 和 PATH 设置为 Java 8,但 Android Studio 指的是 Java 9。
我的解决方案,在菜单中,点击这里的File > Project Structure,将JDK指向适当的位置C:\Program Files\Java\jdk
【讨论】:
一个潜在的问题是,旧版本的 Gradle 无法从 OpenJDK 生成的 java -version 输出中解析 Java 版本。较新的版本可以(我认为它是在 Gradle 2.2 附近更新的;最新的 2.9 可以工作)。
【讨论】:
将 gradle/wrapper/gradle-wrapper.properties 中的 distributionUrl 更改为新版本的 gradle
【讨论】:
我在 ubuntu 16 中遇到了同样的问题。这是因为 Java 的多个版本存在于同一个位置 7、8 和 9。虽然环境变量 JAVA_HOME 和 PATH 设置为 Java 8,但 Android Studio 指的是Java 9。
我的解决方案,在菜单中,在这里点击文件>项目结构,选择8版本
【讨论】:
你设置了 JAVA_HOME 环境了吗?在您的终端中运行 echo $JAVA_HOME 并查看您是否获得了 Java 二进制文件的有效路径。
如果没有,设置JAVA_HOME:
nano .bashrc
添加行:
export JAVA_HOME=<path to jdk>
export PATH=$JAVA_HOME/bin:$PATH
保存文件,然后重新加载 .bashrc
source ~/.bashrc
【讨论】:
我只是将默认的 java JDK 从 Oracle JDK 更改为 OpenJDK。像魅力一样工作。
【讨论】:
类似于 Keds 的回答。在 android Studio 中,在项目选项卡/文件资源管理器中转到 Gradle 脚本 -> gradle.properties
你会看到这样的:
#Sat Sep 21 13:08:26 CEST 2013
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-2.4-all.zip
distributionURL 是旧的,我假设基于其他答案,无法正确解析 Java 版本。
所以通过访问这个网站选择了一个更新的版本: http://services.gradle.org/distributions/
我选了
distributionUrl=http\://services.gradle.org/distributions/gradle-4.8.1-all.zip
只是因为。有更新的版本,比如4.10.2,不过我不是真的用gradle,只是项目需要的。
另外,虽然它并没有真正影响我运行我的项目,但我的项目并没有指向新的 JDK。它按照建议自动指向 Android Studio 的 jre 文件。
如果要更改此设置,请获取最新 Java JDK 的文件路径位置。通常在
C:\Program Files\Java\your_jdk_file
适用于窗户。 在 Android Studio 中,转到文件 -> 项目结构 -> SDK 位置。
取消选中“嵌入式 JDK(推荐)”,然后将文件路径粘贴到整个文件的最新 JDK 文件路径。
如
C:\Program Files\Java\jdk-10.0.2
不仅仅是 bin 文件。祝你好运!
【讨论】:
这对我没有任何帮助,所以如果它可以帮助其他人: 在你的项目中右击“app”,进入“Open Module Settings”>“Properties”,将源兼容性和目标兼容性更改为你需要的Java版本。
【讨论】:
好吧,为我解决的问题是我没有使用嵌入式 jdk,然后将 java 版本设置为 java 7 并构建它因为 lambda 表达式而给了我错误,然后我将 java 版本设置为 1.8,然后同步然后构建和成功了
【讨论】:
使用最新版本的 android studio 打开旧的 android 项目时,会出现许多编译错误。但是,以下步骤对我有用,可以更新项目设置和构建脚本。
打开文件->项目结构并确保
在项目级别的 build.gradle 文件中,确保将 google() 添加到 buildscript{} 和 allprojects{} 的存储库中.
在模块级 build.gradle 文件中,将单词 compile 替换为 implementation 并将 testCompile 替换为 testImplementation。在 compileOptions{} 块中,remove JavaVersion… 字符串周围的单引号。
再次同步并制作项目。
【讨论】: