加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – gradle守护进程的高内存使用

发布时间:2020-12-14 05:11:43 所属栏目:Java 来源:网络整理
导读:我正在使用Gradle 2.5来编译一个包含5个模块的 Java项目.为了加快速度,我也使用gradle-daemon.但是,在编译期间,最多有18个gradle-daemon运行的实例.编译结束后,还有15个守护进程的实例.后台进程消耗大约600 MB的RAM.在后台运行这么多守护进程或者是配??置失
我正在使用Gradle 2.5来编译一个包含5个模块的 Java项目.为了加快速度,我也使用gradle-daemon.但是,在编译期间,最多有18个gradle-daemon运行的实例.编译结束后,还有15个守护进程的实例.后台进程消耗大约600 MB的RAM.在后台运行这么多守护进程或者是配??置失败的程序是否正常?

更新:
我的操作系统是Debian Jessie. Java版本是Oracle Java 8.

解决方法

根据Antoniossss的建议,我与开发人员联系.事实证明,毕业实际上相当资源匮乏.即使是一个简单的“Hello World”应用程序,守护进程可能使用的速度可达150 MB甚至更多.
同样重要的是,启动多个守护进程线程,只要它们在同一个JVM中运行.
控制/限制内存使用的用户方面只能进行有限的控制.
可以设置GRADLE_OPTS变量,以便将Xmx选项传递给JVM,例如,我设法使用以下设置构建我的 Android项目:
$export GRADLE_OPTS="-Xmx64m -Dorg.gradle.jvmargs='-Xmx256m -XX:MaxPermSize=64m'"

第一个-Xmx选项为您在CLI中启动的Gradle设置,第二个(在-Dorg.gradle.jvmargs之后)为Gradle-Daemon的-Xmx值.

您允许JVM占用的内存越少,您的构建的风险就越高.所以你可能需要调整这些设置,直到它们符合你的目的.

这些设置也可以在gradle.properties文件中设置.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读