2015-03-18 13 views
11

Właśnie napotkasz pomysł wykorzystania RAMdisk do kompilacji wyników 1Gradle - skorzystać z ramdysku

Jak używać ramdysku z Gradle?

Domyślam się, że warto przenieść foldery do RAMdisk o numerach .gradle i build.

+1

Czy zauważyliście jakieś korzyści używa ramdysku z Gradle? –

+1

Jest to znacznie szybsze. –

Odpowiedz

5

Tylko dla kompletności, oto jak ja skonfigurowany Gradle (a tym samym również Android studio) na Ubuntu 14.04 na zawsze zbudować do RAM dysku:

My ~/.bashrc zawiera tę linię na końcu:

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

Mój ~/bin/mkramdisk znajduje się poniżej. Przypuszczam, że możesz pominąć ten skrypt i po prostu użyć np. /dev/shm/${System.env.USER}/gradle-builds w następnym etapie, ale podoba mi o ogólne dysku RAM dla innych celów, jak również i ja nawet używać go jako $TMP tak tu idzie:

# 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 

Uwaga dla użytkowników systemu Macintosh: Wydaje się, można zmodyfikować mkramdisk do zamiast tego zawiera polecenie this, aby działało w twoim systemie.

My ~/.gradle/init.gradle jest to (usunąć debugowania println oświadczenia zgodnie z potrzebami):

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" 
    } 
} 
Powiązane problemy