Подтвердить что ты не робот

Gradle - использовать RAMdisk

Я просто запустил идею использования RAMdisk для результатов компиляции 1

Как использовать RAMdisk с Gradle?

Я думаю, стоит перемещать папки .gradle и build в RAMdisk.

4b9b3361

Ответ 1

Просто для полноты, вот как я настроил Gradle (а тем самым и Android Studio) на Ubuntu 14.04, чтобы всегда строить на RAM-диск:

Мой ~/.bashrc содержит эту строку в конце:

. ~/bin/mkramdisk # Setup personal RAM disk on login.

Мой ~/bin/mkramdisk приведен ниже. Я полагаю, вы могли бы опустить этот script и просто использовать, например. /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
export TMP=$RAMDISK

ПРИМЕЧАНИЕ для пользователей Macintosh. Кажется, вы можете изменить mkramdisk, чтобы вместо этого добавить this, чтобы заставить его работать в вашей системе.

Мой ~/.gradle/init.gradle - это (удалите отладочные операторы println, как вы сочтете нужным):

println "Loaded personal ~/.gradle/init.gradle"

gradle.projectsLoaded {
    rootProject.allprojects {
        buildDir = "${System.env.RAMDISK}/gradle-build/${rootProject.name}/${project.name}"
        println "GOT RAMDISK? buildDir=$buildDir"
    }
}