Gradle - 使用 RAMdisk
Gradle - make use of RAMdisk
我刚刚 运行 想到使用 RAMdisk for compilation results 1
如何使用 RAMdisk Gradle?
我想值得将 .gradle
和 build
文件夹移动到 RAMdisk 中。
根 build.gradle
allprojects {
buildDir = "/path/to/build/${rootProject.name}/${project.name}"
}
另见
- Gradle global build directory
- Change gradle build directory in android studio?
- Change Gradle's working directory when compiling a Groovy project
和文档 https://gradle.org/docs/current/userguide/writing_build_scripts.html
为了完整起见,以下是我如何在 Ubuntu 14.04 上配置 Gradle(以及 Android Studio)以始终构建到 RAM 磁盘:
我的~/.bashrc
最后包含这一行:
. ~/bin/mkramdisk # Setup personal RAM disk on login.
我的~/bin/mkramdisk
列在下面。我想你可以省略这个脚本并简单地使用例如/dev/shm/${System.env.USER}/gradle-builds
在接下来的步骤中,但我也喜欢有一个通用的 RAM 磁盘用于其他目的,例如我将它用于我的 $TMP
所以这里是:
# Setup personal RAM disk.
# This script should be sourced, hence the missing +x flag.
# Source it from e.g. from ~/.bashrc or run it from crontab
# at @reboot event (doesn't work with encrypted homedir btw.)
export RAMDISK=$HOME/tmp/ramdisk
if [ ! -d $RAMDISK ]; then
[ -d /dev/shm/$USER-ramdisk ] || install -vd /dev/shm/$USER-ramdisk -o $USER -m 700
[ -d ~/tmp ] || mkdir -v ~/tmp
[ -L ~/tmp/ramdisk ] || ln -vs /dev/shm/$USER-ramdisk ~/tmp/ramdisk
fi
# Use personal RAM disk for $TMP.
export TMP=$RAMDISK
Macintosh 用户注意:您似乎可以修改 mkramdisk
以包含 this 命令以使其在您的系统上运行。
最后回答问题,我的~/.gradle/init.gradle
是这样的:
println "Loaded personal ~/.gradle/init.gradle"
gradle.projectsLoaded {
rootProject.allprojects {
buildDir = "${System.env.RAMDISK}/gradle-build/${rootProject.name}/${project.name}"
println "BUILDING TO RAMDISK: buildDir=$buildDir"
}
}
根据需要删除调试 println
语句。
我刚刚 运行 想到使用 RAMdisk for compilation results 1
如何使用 RAMdisk Gradle?
我想值得将 .gradle
和 build
文件夹移动到 RAMdisk 中。
根 build.gradle
allprojects {
buildDir = "/path/to/build/${rootProject.name}/${project.name}"
}
另见
- Gradle global build directory
- Change gradle build directory in android studio?
- Change Gradle's working directory when compiling a Groovy project
和文档 https://gradle.org/docs/current/userguide/writing_build_scripts.html
为了完整起见,以下是我如何在 Ubuntu 14.04 上配置 Gradle(以及 Android Studio)以始终构建到 RAM 磁盘:
我的~/.bashrc
最后包含这一行:
. ~/bin/mkramdisk # Setup personal RAM disk on login.
我的~/bin/mkramdisk
列在下面。我想你可以省略这个脚本并简单地使用例如/dev/shm/${System.env.USER}/gradle-builds
在接下来的步骤中,但我也喜欢有一个通用的 RAM 磁盘用于其他目的,例如我将它用于我的 $TMP
所以这里是:
# Setup personal RAM disk.
# This script should be sourced, hence the missing +x flag.
# Source it from e.g. from ~/.bashrc or run it from crontab
# at @reboot event (doesn't work with encrypted homedir btw.)
export RAMDISK=$HOME/tmp/ramdisk
if [ ! -d $RAMDISK ]; then
[ -d /dev/shm/$USER-ramdisk ] || install -vd /dev/shm/$USER-ramdisk -o $USER -m 700
[ -d ~/tmp ] || mkdir -v ~/tmp
[ -L ~/tmp/ramdisk ] || ln -vs /dev/shm/$USER-ramdisk ~/tmp/ramdisk
fi
# Use personal RAM disk for $TMP.
export TMP=$RAMDISK
Macintosh 用户注意:您似乎可以修改 mkramdisk
以包含 this 命令以使其在您的系统上运行。
最后回答问题,我的~/.gradle/init.gradle
是这样的:
println "Loaded personal ~/.gradle/init.gradle"
gradle.projectsLoaded {
rootProject.allprojects {
buildDir = "${System.env.RAMDISK}/gradle-build/${rootProject.name}/${project.name}"
println "BUILDING TO RAMDISK: buildDir=$buildDir"
}
}
根据需要删除调试 println
语句。