I'estou a tentar usar o novo Android Studio mas parece que não consigo'não consigo pô-lo a funcionar correctamente.
I'm usando a biblioteca **Gson*** para serializar/deserializar os objetos do JSON. Mas a biblioteca de alguma forma está't incluída na construção.
Eu tinha criado um novo projeto com apenas um **MainActivity*. Copiei gson-2.2.3.jar** na pasta /libs e adicionei-o como uma dependência de biblioteca(clique direito>Adicionar como biblioteca). Isto inclui o frasco em android studio para que possa ser referenciado a partir dos arquivos fonte.
Quando eu tento executar o projeto ele não pode ser compilado, então eu adicionei:
compile files('libs/gson-2.2.3.jar')
para as dependências no arquivo de .gradle. Depois disso, ele compila corretamente, mas ao executar a aplicação eu recebo uma `ClassDefNotFoundException'.
Alguém sabe o que eu'estou a fazer mal?
I'há muitas horas que me esforço com a mesma coisa, tentando fazer o frasco Gson trabalhar nada menos que isso. Eu finalmente o rachei - aqui estão os passos que eu dei:
Coloque o frasco Gson (no meu caso, gson-2.2.4.jar
) na pasta libs
.
Clique com o botão direito do mouse e pressione 'Adicionar como biblioteca'
Certifique-se de que compile files('libs/gson-2.2.4.jar')
esteja no seu arquivo build.gradle
(ou compile fileTree(dir: 'libs', inclua: '*.jar')
se você estiver utilizando muitos arquivos jar)
Edit : Utilize arquivos de implementação('libs/gson-2.2.4.jar')
(ou arquivo de implementaçãoTree(dir: 'libs', inclua: '*.jar')
) no Android Studio 3.0+
Faça uma compilação limpa (provavelmente você pode fazer isso bem no Android Studio, mas para ter certeza que eu naveguei em um terminal para a pasta raiz da minha aplicação e digitei gradlew clean
. I'm no Mac OS X, o comando pode ser diferente no seu sistema
Depois de ter feito os quatro acima, começou a funcionar bem. Acho que o 'Adicionar como biblioteca'passo foi o que o I'faltou anteriormente, e também não funcionou'não funcionou até eu o limpar.
[Editar - adicionado o passo build.gradle
que também é necessário, como outros já apontaram]
IIRC, simplesmente usando "Adicionar como biblioteca" é'não é suficiente para compilar com o projeto.
Verifique Intellij's help sobre a adição de bibliotecas a um projeto
A parte que mais lhe deve interessar é esta:
(Em `File > Project Structure') Abra as configurações do módulo e selecione a guia Dependências.
na guia Dependências, clique em adicionar e selecione Biblioteca.
No diálogo Selecionar bibliotecas, selecione uma ou mais bibliotecas e clique em Adicionar selecionadas.
Se a biblioteca não't aparecer no diálogo, adicione-a nas configurações das bibliotecas, logo abaixo dos Módulos.
Você não deve't precisar mais adicionar compile files()
, e a biblioteca deve ser devidamente adicionada ao seu projeto.
No Mac OS X:
Adicionar jarro como biblioteca (arraste o jarro para a libs, clique com o botão direito do mouse em adicionar como lib)
Adicionar declaração de compilação ao `build.grade'.
Instale o gradle v1.6
(utilize homebrew)
Isto resolveu-me.