我刚刚在初级操作系统0.3Freya上安装了Android,并使用终端运行它。然而,在我的第一次启动时,有一条错误消息显示:
“测试”项目刷新失败 无法启动守护进程。此问题可能是由守护进程的不正确配置引起的。例如,使用了一个未识别的jvm选项。请参阅daemon.html上关于守护进程的用户指南一章,请阅读以下进程输出以了解更多信息: 无法识别的VM选项'MaxPermSize=256m‘错误:无法创建Java。错误:发生致命异常。程序将退出。
我读了这,尝试了所有的方法来解决它,但没有结果。我确实注意到他的错误与我的有些不同,并认为这可能是我不能用建议的方法解决问题的原因。
当我在我的终端上执行.sh文件时,它打印:
Java HotSpot(TM)服务器VM警告:忽略选项MaxPermSize=250m;支持在8.0中被删除 (java:5094):Gtk-警告**:无法在module_path中找到主题引擎:“像素地图” gtk-消息:加载模块“canberra-gtk-模块”失败
我不确定这是否与错误有关。请帮帮忙。
发布于 2021-10-19 12:21:10
在我的例子中,我有一条线
org.gradle.jvmargs=-Xmx6408m -XX:MaxPermSize=6408m -XX:+HeapDumpOnOutOfMemoryError
在项目结构中的gradle.properties
文件中。
从该文件中删除-XX:MaxPermSize=6408m
修复了一个问题
发布于 2015-07-14 18:46:24
正如在这个线程中已经说过的,永久世代在Java 8中被删除,在您的例子中使用。我认为,最简单的解决方案是在程序执行期间删除与永久生成相关的参数。
转到拥有Android的目录。然后转到bin/
子目录。找到以下文件,其中包含Java虚拟机选项:
studio.vmoptions
studio64.vmoptions
打开这些文件并使用MaxPerSize
参数定位行。它应如下:
XX:MaxPermSize=256m
在两个文件中删除这一行。我不知道你是使用32位还是64位操作系统,所以你可以更新两个文件以防万一。
我不确定它是否能解决你的问题,但我会在这种情况下试一试。在我的例子中,使用此选项和Java 8,我只收到警告,但是Android无论如何都会启动。删除此参数后,Android仍将启动,但没有警告。我用的是Ubuntu 14.04 LTS。
编辑
这里描述了解决此问题的另一个解决方案:https://stackoverflow.com/a/27913562/1150795。
转到文件>其他设置>默认项目结构> JDK位置并检查路径。
对于Ubuntu,如果使用Oracle,可以将/usr/lib/jvm/java-7-oracle
设置为默认JDK。JDK 7是Android最安全的选择。
发布于 2022-08-02 08:45:29
-XX:MaxPermSize
在JDK 8中被废弃,在JDK 16中被标记为过时,在JDK 17中被删除,它被-XX:MaxMetaspaceSize
选项所取代。
将-XX:MaxPermSize
改为-XX:MaxMetaspaceSize
解决我的问题。
参考文献:
https://stackoverflow.com/questions/31411989
复制相似问题