Obtendo dependências Gradle no IntelliJ IDEA usando a construção Gradle

140

A construção de notas, mesmo de dentro do IntelliJ IDEA, não coloca as dependências na pasta "External Libraries", portanto essas classes não aparecem como sugestões no editor e, quando as adiciono manualmente como importação, ocorre um erro de compilação.

Como posso fazer com que o IntelliJ incorpore automaticamente as dependências no meu arquivo build.gradle , por exemplo:

compile 'com.google.code.gson:gson:1.7.2

Andrew
fonte
2
Importe o projeto como um projeto gradle, verifique se o suporte a gradle está ativado.
M. Deinum

Respostas:

191

Você precisa importar o projeto como um projeto Gradle de dentro do Idea. Ao adicionar uma dependência, é necessário abrir a janela Gradle e executar uma atualização.

Como alternativa, gere os arquivos do projeto da gradle com isso:

build.gradle:

apply plugin: 'idea'

E então execute:

$ gradle idea

Se você modificar as dependências, precisará executar novamente o acima.

tddmonkey
fonte
apply plugin: 'idea'deve ser adicionado em qualquer caso.
Peter Niederwieser
@PeterNiederwieser - se você está fazendo uma importação do Idea, que efeito isso tem?
Tddmonkey
Ele permite configurar vários aspectos da instalação do IntelliJ (por exemplo, qual JDK usar), que deve ser respeitado pela importação. Se sua compilação não tiver essa configuração, talvez não seja necessário aplicar o plug-in (nunca tentei sem isso).
Peter Niederwieser
graças, bom saber, eu exclusivamente usar Gradle para gerar os arquivos de projeto para mim isso nunca necessários para fazer isso
tddmonkey
O mesmo ocorre ao gerar arquivos de projeto, exceto que a aplicação do plug-in definitivamente não é opcional nesse caso.
Peter Niederwieser
188

Depois de adicionar dependências, abra a guia "Gradle" ('Exibir' -> Ferramentas Windows -> Gradle) e clique em "Atualizar"

exemplo de adição (compile 'io.reactivex: rxjava: 1.1.0'):

clique em atualizar

Se o Idea ainda não conseguir resolver a dependência, é possível que a dependência não esteja no repositório mavenCentral () e você precisará adicionar um repositório onde essa dependência se localize nos repositórios {}

Andrey
fonte
13
Mas parece que não funciona. Eu adicionei uma dependência e atualizei, mas quando tento importar a biblioteca em XML ou Java Source Code, o IDEA não pode resolvê-la.
21416 AuBee
3
Trabalhou para mim. Felizmente, mesmo sem usar o plugin idéia gradle.
precisa
2
@AuBee: Eu tive o mesmo problema. Ele desapareceu quando eu construí (apenas uma vez) usando Gradle na linha de comando.
Thomas
@ Thomas Sim. O CLI sempre tem mais controle
Andrey
@AuBee Se Idea pode não resolve dependência, portanto, é, possivelmente, a dependência não está na mavenCentral () repositório e você também precisa adicionar repositório em repositórios {}
Andrey
20

Ao importar um projeto Gradle existente (um com a build.gradle) para o IntelliJ IDEA, quando apresentado com a tela a seguir, selecione Importar do modelo externo -> Gradle .

Importar projeto do modelo externo

Opcionalmente, selecione Importação automática na próxima tela para importar automaticamente novas dependências.

Qix - MONICA FOI ERRADA
fonte
3
Na verdade, essa resposta resolveu meu problema e deve ser a primeira coisa que você faz antes da resposta correta real acima.
quickinsights 13/03/19
3
Esta é a única solução que realmente funciona e está correta. A adição de algo no gradle.properties apenas para a ideia está totalmente errada.
User219882
Não foi possível obter o realce da sintaxe e o preenchimento automático para funcionar sem executar esta etapa na importação original. Você pode corrigi-lo sem reimportar, mas isso é muito mais fácil, pelo menos em um projeto pequeno.
Ed Norris
@ user219882 - por que adicionar algo à sua compilação está "completamente errado"?
Tddmonkey 23/10
@tddmonkey porque o IDE que um usuário escolhe usar é irrelevante para descrever como uma compilação ocorre.
Qix - MONICA FOI ERRADA EM 13/11
11

Para aqueles que estão recebendo o erro "Não é possível resolver dependências":
desative o "Modo offline"
('Exibir' -> Ferramentas Windows -> Gradle)

janela gradle

Jingxuan Zhou
fonte
5

O post acima de Andrey ainda é válido para a versão mais recente do Intellij a partir do 3º trimestre de 2017. Portanto, use-o. Porque, criar projeto e compilar gradle da linha de comando externa, NÃO o adiciona às dependências externas do Intellij ... doido como isso parece verdade. A única diferença agora é que a interface do usuário parece diferente da anterior, mas ainda é usado o mesmo ícone para atualização. Estou apenas colocando uma resposta aqui, porque não consigo colar um instantâneo da nova interface do usuário ... Não quero votos por si só. Andrey ainda deu a resposta correta acima: insira a descrição da imagem aqui

Beezer
fonte
1

No meu caso, eu estava recebendo erro ao atualizar a guia gradle ('View' -> Tool Windows-> Gradle) e pressione "refresh" e obtendo esse erro sem essa variação de propriedade da classe jetgradleplugin.

Teve que instalar o mais recente intellij compatível com gradle 5+

Saurabh
fonte