Gradle indirilen jar dosyalarını yerel dosya sisteminde nasıl depolar? Maven onları aşağıdaki .m2dizinde saklar USER_HOME, ancak Gradle onları nerede saklar? .gradleOradaki klasörü kontrol ettim , ama sadece derlenmiş scriptleri gördüm.
Gradle indirilen jar dosyalarını yerel dosya sisteminde nasıl depolar? Maven onları aşağıdaki .m2dizinde saklar USER_HOME, ancak Gradle onları nerede saklar? .gradleOradaki klasörü kontrol ettim , ama sadece derlenmiş scriptleri gördüm.
Yanıtlar:
Gradle, USER_HOME/.gradleklasördeki eserleri önbelleğe alır . Derlenen komut dosyaları genellikle .gradleproje klasörünüzdeki klasörde bulunur.
Önbelleği bulamıyorsanız, belki de henüz herhangi bir yapay nesneyi önbelleğe almadınız. Gradle'ın yapay nesneleri önbelleğe aldığını her zaman basit bir komut dosyasıyla görebilirsiniz:
apply plugin: 'java'
repositories{
mavenCentral()
}
dependencies{
compile 'com.google.guava:guava:12.0'
}
task showMeCache << {
configurations.compile.each { println it }
}
Şimdi çalıştırırsanız gradle showMeCache, önbelleğe deps indirmeli ve tam yolu yazdırmalıdır.
<<Gradle 3.2'de kullanımdan kaldırılıyor mrhaki.blogspot.com/2016/11/…
Mac, Linux ve Windows'ta, yani büyük platformların 3ünde de, Gradle bağımlılıkları şu adreste depolar:
~/.gradle/caches/modules-2/files-2.1
caches/modules-2/files-2.1Buradaki diğer yanıtların aksine , soruyu gerçekten yanıtladığınız için teşekkür ederiz .
cd %userprofile%\.gradle\caches\modules-2\files-2.1- Windows'ta bu dizini bulmak için kısa bir komut.
Windows 10 PC'de şu konuma kaydedilir:
C:\Users\<user>\.gradle\caches\modules-2\files-2.1\
Bağımlılık dosyalarınızın belirli bir klasörde olmasını istiyorsanız, copybunun için bir görev kullanabilirsiniz . Örn.
task copyDepJars(type: Copy) {
from configurations.compile
into 'C:\\Users\\athakur\\Desktop\\lib'
}
Gradle'ın yerel depo klasörü:
Tanımlanan bağımlılıklar uzak depolardan sınıfın yerel depo klasörüne yüklenir. Yüklenen her dosya için, gradle orijinal dosyanın md5 değeri (pom, jar, ..) adında yeni bir klasör oluşturur. Bağımlılık dosyasının tam yolu şunlardan oluşur:
Tanımlanmış bağımlılığımız:
Sonra kütüphane yüklenecektir:
Aslında önbellek konumu GRADLE_USER_HOMEortam değişkeni değerine bağlıdır . Varsayılan olarak, $USER_HOME/.gradleUnix-OS tabanlı ve %userprofile%.\gradleWindows'tadır.
Ancak bu değişkeni ayarlarsanız, önbellek dizini bu yoldan bulunur.
Durum ne olursa olsun caches\modules-2\files-2.1, bağımlılıkları bulmak için araştırmalısınız.
Birçok cevap doğrudur! İndirme konumunuzu kolayca bulabileceğinizi eklemek istiyorum
gradle --info build
https://stackoverflow.com/a/54000767/4471199 adresinde açıklandığı gibi .
İndirilen yeni eserler stdout'ta gösterilecek:
Downloading https://plugins.gradle.org/m2/org/springframework/boot/spring-boot-parent/2.1.7.RELEASE/spring-boot-parent-2.1.7.RELEASE.pom to /tmp/gradle_download551283009937119777bin
Bu durumda docker görüntüsünü kullandım gradle:5.6.2-jdk12. Gördüğünüz gibi, docker konteyneri /tmpindirme konumu olarak kullanıyor .
Android stüdyoda gradle indirilen jar dosyasını kontrol etmek için aşağıdaki adımları izleyin.
Bunu fark etmem biraz zaman aldı, dolayısıyla ek cevap. Umarım millet zamandan tasarruf edebilirsiniz. Çalıştırıyorsanız sudo gradle, bağımlılıklar sudo echo $HOMEdöndürülse bile ana dizininizde olmayabilir /Users/<my-non-root-user>/. Mac bilgisayarımda, Gradle bağımlılıkları önbelleğe alıyordu /private/var/root/.gradle/caches/.
~/.gradle/caches/modules-2/files-2.1.