我更新到Android Studio 2.3后,我无法使用嵌入式JDK。当我尝试构建项目时,我得到这样的错误:
Error:The newly created daemon process has a different context than expected.
Java home is different.
Expecting: 'D:\Development\IDE\AndroidStudio\jre' but was: 'C:\Program Files\Java\jre1.8.0_121'.
Please configure the JDK to match the expected one.
<a href="open.project.structure">Open JDK Settings</a>
但是没有定义JAVA_HOME环境变量(但是我仍然可以使用正常的JDK而没有问题,所以没关系)。那么Android Studio在哪里找到Java Home,从而阻止我使用嵌入式JDK?
那么我该如何使用嵌入式JDK解决问题呢?我甚至卸载了JDK以使其工作,我更新了java(导致它指向jre)。重新安装JDK,当我指向它时,它工作正常。但我想使用嵌入式JDK。有什么想法吗?
我尝试在gradle.properties中设置java home(在注释中链接),但它仍然显示错误。
gradle.properties(见突出显示的行)
这一行(应该可行但不起作用)
org.gradle.java.home=D:/Development/IDE/AndroidStudio/jre
它应该使嵌入式JDK工作(并在IDE中更改java home),但它不会。它仍会导致相同的错误(如本文顶部所示) 关于错误
在片段中它表示jre,那是因为当我复制它时,我刚刚卸载了JDK。更新JDK和Java导致java_home被设置为JDK位置,但未将其定义为环境变量。我尝试删除jdk表(在android studio配置文件夹中),但它没有用。
当我将JDK设置为嵌入式时,它的外观如何:
JDK版本
在评论中建议我设置JDK版本。从同一注释中的链接,定义JDK版本是指JDK处于活动状态。意思是,对于此问题,设置JDK版本将具有无效
答案 0 :(得分:3)
尝试重置更新后的JDK路径。并再次检查。可能它会帮助你。还清除你的android studio临时缓存和所有。
答案 1 :(得分:1)
我通过卸载所有jdk安装和放大来解决了这个问题。更新然后只重新安装一个jdk并确保其环境。变量
我没有解决方案,但我遇到了同样的问题,因为android studio从java_home / jre打开,因此所有将在下一个分叉的JVM将来自此路径,而你的系统变量告诉Gradle获取他的java。来自JAVA_HOME的exe
我试图从jre中读取gradle但是它也愚蠢地试图让java工作室从java_home / bin打开但是它也很糟糕
答案 2 :(得分:1)
我遇到了与Android工作室版本2.2.3一样的嵌入式JDK完全相同的问题,当我更新时,每次工作室提示未找到JRE时,我在项目文件夹中添加了系统JDK路径,现在整个Android工作室挂起并且我切换回Android studio 2.2.3。似乎Android studio 2.3.1发布了错误。
答案 3 :(得分:0)
看来,JDK版本有一些错过的匹配。
所以试试这个: 首先卸载所有Jdk / jre和Android Studio。
清除临时/预取等。
然后只需安装最新版本的Android studio。
请记住:不要安装任何其他JDK / jre,并确保您的系统具有正确的互联网连接。所有丢失的文件都会自动下载。
我已经尝试过了,这对我有用。我希望它也适合你。
答案 4 :(得分:0)
我必须说AS在环境设置方面有太多麻烦。我们需要了解一些概念。
AS default java runtime environment itself.
然后问题即将来临,当系统的JDK版本与AS的JDK版本不匹配时会发生什么?
岛
因为java.lang.UnsupportedClassVersionError
II。
gradle failure:认证......
III。还有一些我现在不记得的错误。
<强>解决方案:强> 如果您的AS更新到最新版本,则应将Gradle更新为最新版本,并确保系统的JDK与AS的JDK版本相匹配。至少,你的idk版本更新到JDK1.8.0以上。完成所有这些操作后,尝试重新启动AS,如果有效,请尝试重新启动计算机。
<强>附加:强> Gradle同步时代理软件有一些影响,如果有任何关于证书的提示,请尝试关闭代理软件并重试。