Como o Gradle armazena arquivos jar baixados no sistema de arquivos local? O Maven as armazena no .m2diretório abaixo USER_HOME, mas onde a Gradle as armazena? Eu verifiquei a .gradlepasta lá, mas vi apenas scripts compilados.
Como o Gradle armazena arquivos jar baixados no sistema de arquivos local? O Maven as armazena no .m2diretório abaixo USER_HOME, mas onde a Gradle as armazena? Eu verifiquei a .gradlepasta lá, mas vi apenas scripts compilados.
Respostas:
Gradle armazena em cache artefatos na USER_HOME/.gradlepasta. Os scripts compilados geralmente estão na .gradlepasta na sua pasta do projeto.
Se você não conseguir encontrar o cache, talvez seja porque você ainda não armazenou nenhum artefato em cache. Você sempre pode ver onde o Gradle armazenou artefatos em cache com um script simples:
apply plugin: 'java'
repositories{
mavenCentral()
}
dependencies{
compile 'com.google.guava:guava:12.0'
}
task showMeCache << {
configurations.compile.each { println it }
}
Agora, se você o executar gradle showMeCache, faça o download dos deps no cache e imprima o caminho completo.
<<está sendo preterido no Gradle 3.2 mrhaki.blogspot.com/2016/11/…
No Mac, Linux e Windows, ou seja, nas três principais plataformas, a Gradle armazena dependências em:
~/.gradle/caches/modules-2/files-2.1
caches/modules-2/files-2.1, diferente de todas as outras respostas aqui.
cd %userprofile%\.gradle\caches\modules-2\files-2.1- um comando curto para localizar neste diretório no Windows.
No Windows 10 PC, ele é salvo em:
C:\Users\<user>\.gradle\caches\modules-2\files-2.1\
Se você deseja que seus arquivos de dependência estejam em uma pasta específica, você pode simplesmente usar uma copytarefa para isso. Por exemplo.
task copyDepJars(type: Copy) {
from configurations.compile
into 'C:\\Users\\athakur\\Desktop\\lib'
}
A pasta do repositório local de Gradle é:
Dependências definidas serão carregadas de repositórios remotos na pasta de repositório local da gradle. Para cada arquivo carregado, gradle criará uma nova pasta nomeada com o valor md5 do arquivo original (pom, jar, ..). O caminho completo para o arquivo de dependência é composto de:
Se nossa dependência definida for:
Em seguida, a biblioteca será carregada em:
Estou nas janelas
Você deve encontrar as dependências dentro
$ USER_HOME.gradle \ caches \ artifacts-24 \ filestore
~/.gradle/caches/modules-2/files-2.1.
De fato, o local do cache depende do GRADLE_USER_HOMEvalor da variável de ambiente. Por padrão, ele é $USER_HOME/.gradlebaseado no Unix-OS e %userprofile%.\gradleno Windows.
Mas se você definir essa variável, o diretório de cache estará localizado nesse caminho.
E, seja qual for o caso, você deve caches\modules-2\files-2.1procurar as dependências.
Muitas respostas estão corretas! Quero acrescentar que você pode encontrar facilmente o seu local de download com
gradle --info build
como descrito em https://stackoverflow.com/a/54000767/4471199 .
Os novos artefatos baixados serão mostrados no stdout:
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
Nesse caso, usei a imagem do docker gradle:5.6.2-jdk12. Como você pode ver, o contêiner do docker usa /tmpcomo local de download.
No android studio, execute as seguintes etapas para verificar o arquivo jar baixado pelo gradle.
Levei um tempo para perceber isso, daí a resposta adicional. Espero que ele possa economizar tempo para as pessoas. Observe que, se você estiver executando, sudo gradleas dependências podem não estar no diretório inicial, mesmo que sudo echo $HOMEretornem /Users/<my-non-root-user>/. No meu Mac, Gradle estava armazenando as dependências em cache /private/var/root/.gradle/caches/.
~/.gradle/caches/modules-2/files-2.1.