首页 > 代码库 > 写一个杀死Gradle Daemon的shell脚本和bat脚本

写一个杀死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脚本