写一个杀死Gradle Daemon的shell脚本和bat脚本
Posted Yuyu.Racaud
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了写一个杀死Gradle Daemon的shell脚本和bat脚本相关的知识,希望对你有一定的参考价值。
1. Gradle Daemon也就是Gradle守护进程
Gradle需要运行在一个Java虚拟机中,每一次执行gradle命令就意味着一个新的Java虚拟机被启动,然后加载Gradle类和库,最后执行构建。这样,构建起来会花费大量的时间在Java虚拟机的启动与关闭。
通过Gradle 守护进程,只需要启动一次Java虚拟机,之后就可以再利用,无需再次重启Java虚拟机。这样就达到缩短构建时间的目的。
2. Java虚拟机,每存在一个main函数就会新创建一个jvm,也就是说一台机器上可以创建很多个jvm
3.建一个以.sh结尾的的脚本文件,内容如下
#!/bin/bash echo "Kill Gradle Daemon" pid=`jps | grep GradleDaemon | awk ‘{print $1}‘` kill -9 $pid
#!/bin/bash脚本默认开头
echo控制是否在console显示
pid=‘‘给变量赋值
jps列出jvm所有进程,grep GradleDaemon筛选出GradleDaemon进程,awk ‘{print $1}‘打印出pid
kill -9 $pid杀死进程
注意,由于pid中存的是一个集合,所以如果存在多个GradleDaemon进程,不需要再写for循环
下面贴上.bat脚本
@echo off echo ------------------------------------------ echo Liferay Kill All Gradle Daemon Process Kit echo ------------------------------------------ for /f %%i in (‘call jps^|find /i "GradleDaemon"‘) do ( echo %%i && taskkill /f /pid %%i )
另外,有人可能会去用ps命令去查找进程,由于Gradle是jvm进程,所以用jps比较方便。
以上是关于写一个杀死Gradle Daemon的shell脚本和bat脚本的主要内容,如果未能解决你的问题,请参考以下文章
CTRL + C w / Spring Boot&Gradle Kills Gradle Daemon
如何修复“无法找到或加载主类 org.gradle.launcher.daemon.bootstrap.GradleDaemon”?
Jenkins报错'Gradle build daemon disappeared unexpectedly'的问题解决