Como adicionar um jar em bibliotecas externas no android studio


Respostas:


320

Uma resposta tardia, embora eu pensasse em dar uma resposta profunda a essa pergunta. Este método é adequado para o Android Studio 1.0.0 e superior.


PASSOS


  1. Primeiro mude sua estrutura de pastas do Android para o Project .

insira a descrição da imagem aqui

  1. Agora procure a pasta libs dentro da pasta app - build.

insira a descrição da imagem aqui

  1. Depois de colar o arquivo .jar na pasta libs. Clique com o botão direito do mouse no arquivo jar e, no final, clique em Adicionar como biblioteca . Isso cuidará da adição de arquivos de compilação ('libs / library_name.jar') em build.gradle [Você não precisa inserir manualmente isso em seu arquivo de construção].

insira a descrição da imagem aqui

Agora você pode começar a usar a biblioteca em seu projeto.


3
Eu não entendo o Adicionar como opção Biblioteca no passo 3 no meu estúdio Android 3.0.1
Shylendra Madda

3
Sim, descobri que agora, se já estiver adicionado, essa opção não será exibida.
Shylendra Madda

Perfeito corrigido o meu problema
DIRTY DAVE

138

Adicione seu arquivo jar para a pasta app/libs. Em seguida, clique com o botão direito do mouse no arquivo jar e clique em "adicionar como biblioteca".

Se não houver uma libspasta, você poderá criá-la. Clique na caixa de combinação que diz "Android" e altere-a para "Projeto"

insira a descrição da imagem aqui

A partir daqui, você pode clicar com o botão direito do mouse em "apps" na árvore de diretórios e ir para "New" => "Directory"


36
Se você não conseguir encontrar uma pasta lib, basta clicar na caixa de combinação que diz "android" e escolher "Projeto". (esse botão está no topo do explorador do projeto)
Gayan Weerakutti

2
Você pode expandir o seu projeto para encontrar a pasta "libs" ou clicar com o botão direito do mouse no seu projeto e criar um novo diretório. Em seguida, você pode mover o arquivo JAR da sua biblioteca para esse diretório usando o gerenciador de arquivos do SO. (Obrigado, @reversiblean por me começou!)
Richard

+1 no comentário de @ reversiblean - a exibição padrão é "Arquivos de Projeto" e não "Projeto", e essa exibição não mostra a pasta "app / libs", mas também não permitirá que você a crie.
Jules

4
Não recebo a opção Adicionar como biblioteca no Android Studio 3.0.1
Shylendra Madda

1
@ Thinsky Sim, descobri que agora, se já estiver adicionado, essa opção não será exibida.
Shylendra Madda

63

Coloque seu JAR em app / libs e, em app / build.gradle, adicione na dependenciesseção:

compile fileTree(dir: 'libs', include: ['*.jar'])


posso escolher outro / meu próprio caminho como "values ​​\ my_folder \ myjar.jar" ??? porque eu estou trabalhando no código fonte do android studio.
precisa saber é o seguinte

Você só precisa alterar o valor de 'dir' (substitua 'libs' pelo que você precisar).
Gaëtan 22/01

1
compilação está obsoleta
Deepak Samuel Rajan

1
Sim, o Deepak está correto - 'compilar' está obsoleto ... então substitua-o por 'implementação' e deve funcionar bem.
Mark

40

Crie a pasta "libs" no diretório do aplicativo, copie o arquivo jar na pasta libs, clique com o botão direito do mouse no arquivo jar no Android Studio e na biblioteca Adicionar como ... Em seguida, abra o build.gradle e adicione:

dependencies {
    implementation files('libs/your jar file.jar')
}

1
Configuration 'compile' is obsolete and has been replaced with 'implementation' and 'api'.
Michael

20

Etapa 1: faça o download de qualquer arquivo JAR para o seu projeto.insira a descrição da imagem aqui

Etapa 2: Copie o arquivo .jar e cole na pasta libs.

insira a descrição da imagem aqui insira a descrição da imagem aqui

Etapa 3: clique em Arquivo> Estrutura do projeto> Selecionar aplicativo> Dependências

insira a descrição da imagem aqui

Passo 4:

insira a descrição da imagem aqui

Etapa 5:

insira a descrição da imagem aqui

Etapa 6: Depois de clicar no botão OK, podemos ver as dependências adicionadas desta maneira:

insira a descrição da imagem aqui


13

Exemplo com jar de Parse ...

Adicione jars à pasta libs na visualização Project ... crie uma pasta lib, se não existir

insira a descrição da imagem aqui

Copie todos os frascos lá ...

Inclua libs no gradle .... no arquivo build.gradle:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.0'
    compile 'com.android.support:design:23.0.0'
    compile 'com.android.support:percent:23.0.0'
    compile 'com.parse.bolts:bolts-android:1.+'
    compile fileTree(dir: 'libs', include: 'Parse-*.jar’)
}

Para adicionar todos os jars da pasta lib ... altere Parse - *. Jar para * .jar


11

É assim que você pode adicionar .jararquivos no Android Studio 2.1.3.

  1. Copie o arquivo .jar captura de tela da cópia do arquivo jar

  2. cole o arquivo na pasta Libs e clique com o botão direito do mouse no arquivo .jar e pressione Add as library insira a descrição da imagem aqui

  3. abra build.gradle insira a descrição da imagem aqui

  4. adicione linhas sob dependências, como mostra a captura de tela insira a descrição da imagem aquiinsira a descrição da imagem aqui

  5. Agora pressione o botão play e você terminou de adicionar o arquivo .jar insira a descrição da imagem aqui


(Pelo menos com o AS 2.3) Você pode pular as etapas 3 e 4. O AS adiciona automaticamente o JAR às dependências do build.gradle.
Ala Poon

2
pule as etapas 3 e 4 e abra Arquivo-> Estrutura do projeto-> aplicativo-> dependências-> clique em + -> dependências jar e escolha o arquivo jar. seu trabalho para mim
Jhohannes Purba

3

A abordagem baseada em GUI seria adicionar um módulo adicional ao seu projeto.

  1. No menu Arquivo, selecione Estrutura do projeto e clique no ícone verde mais no canto superior esquerdo.
  2. A nova caixa de diálogo Módulo aparece
  3. No grupo de aplicativos para telefone e tablet, selecione a opção "Importar pacote JAR ou AAR" e clique em Avançar.
  4. Siga as etapas para criar um novo módulo que contenha seu arquivo JAR.
  5. Clique na entrada que corresponde ao seu projeto principal e selecione a guia dependências.
  6. Adicione uma dependência ao módulo que você criou na etapa 4.

Um último conselho. Certifique-se de que o arquivo JAR que você inclui seja construído no máximo com o JDK 1.7 . Muitos problemas relacionados à mensagem de erro "com.android.dx.cf.iface.ParseException: mágica de arquivo de classe ruim (cafebabe) ou versão (0034.0000)" se baseiam diretamente nisso: 0.


Você confirma que essa abordagem é melhor que a abordagem da pasta "copy-jar-to-libs", como dizem outras respostas?
Eido95

@ Eido95 Foi assim que eu fiz em 2015. Lembro de tentar incluir a análise JSON em um aplicativo Android e foi isso que realmente funcionou.
Thanassis

Qual abordagem você recomenda que devo usar na sua opinião para simples adição externa de JAR?
Eido95

3

Uma maneira simples de adicionar os arquivos Jar do Android Studio Pass:

  1. Copie e cole seu arquivo jar na pasta libs do seu projeto.
  2. Clique em Arquivo no menu Arquivo -> Estrutura do projeto (CTRL + SHIFT + ALT + S no Windows / Linux, ⌘ +; no Mac OS X).
  3. Selecione Módulos no painel esquerdo -> guia Dependências.
  4. Adicionar ... → Biblioteca de Projetos → Anexar Jar.

3

Se alguém estiver procurando por outra solução sem realmente copiar o (s) arquivo (s) jar no diretório do projeto, por exemplo, ao usar um jar em vários projetos:

Abra build.gradle e adicione

def myJarFolder = 'C:/Path/To/My/Jars'

[...]

dependencies {
    [...]
    compile fileTree(dir: myJarFolder + '/jar/Sub/Folder/1', include: ['*.jar'])
    compile fileTree(dir: myJarFolder + '/jar/Sub/Folder/2', include: ['*.jar'])
    [...]
}

Note que é claro que você não precisa usar a variável myJarFolder , embora eu ache útil. O caminho também pode ser relativo, por exemplo ../../Path/To/My/Jars .
Testado com AndroidStudio 3.0

Atualização: Para o Gradle Plugin> 3.0, use a implementação em vez da compilação :

dependencies {
        [...]
        implementation fileTree(dir: myJarFolder + '/jar/Sub/Folder/1', include: ['*.jar'])
        implementation fileTree(dir: myJarFolder + '/jar/Sub/Folder/2', include: ['*.jar'])
        [...]
    }

Estou tendo um problema com isso. Estou fazendo isso uma biblioteca e o aplicativo que depende da biblioteca está sendo executado no NoClassDefFoundError. Também estou recebendo um monte de erros em torno de não ser capaz de encontrar a classe para Dessacarificação
tricknology

3

No Android Studio versão 3.0 ou mais, usei abaixo:

  1. Crie libs para o diretório do aplicativo, se não existir uma pasta como
    • Ir para o projeto
    • Vá para o aplicativo
    • clique em apps-> Novo-> Diretório
    • nomeou a pasta libs
    • cole o jar na pasta libs
    • imagem será semelhante insira a descrição da imagem aqui

2.In build.gradle add abaixo linhas

implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation files('libs/com.ibm.icu_3.4.4.1.jar')

1

Se você não vir a opção "Adicionar como biblioteca", certifique-se de extrair (descompactar) o arquivo para que você tenha mail.jarou não mail.zip.

Em seguida, clique com o botão direito do mouse no seu arquivo e você poderá ver a opção "Adicionar como biblioteca".


1

Forneça o local do arquivo jar em build.gradle

implementation fileTree(dir: '<DirName>', include: ['*.jar'])

Exemplo:

implementation fileTree(dir: 'C:\Downloads', include: ['*.jar'])

Para adicionar um arquivo jar único

implementation files('libs/foo.jar')

Nota: a compilação foi descontinuada no último nível, portanto, use a implementação.


0

A "maneira oficial" de adicionar um jar ao seu projeto Android como uma biblioteca externa é adicionar o jar na seção de dependências {} no build.gradle .

Se você fez tudo o que precede, e nenhuma das opções acima funciona, existem outras duas possibilidades:

  1. Se o Android Studio ou algum outro IDE não apresentar erros sublinhados em vermelho no editor, mas for executado com erro no Java Compiler, VERIFIQUE SEU JAR . Seu jar pode não ter um Manifest apropriado incluído, portanto, o compilador não sabe o que o jar pode fornecer / não sabe o nome do pacote
  2. Talvez sua estrutura de pastas esteja desarrumada. A estrutura da pasta não corresponde ao nome do pacote. package a.b.c;deve corresponder à pasta a> pasta b> pasta c.
  3. O nome do pacote tem algum conflito. (Confie em mim, isso aconteceu comigo e levou horas para descobrir.)

No entanto, se você estiver usando cordova , aqui estão algumas dicas para adicionar frascos externos.

" build-extras.gradle " é a melhor maneira de gerenciar seu arquivo gradle.

Aqui estão as etapas para gerenciar configurações extras no projeto android baseado em cordova:

  1. Adicionando seu jar ao build-extras.gradle:
    //Other settings go here, e.g.: buildscript { ... }
    ext.postBuildExtras = {
    // you may have some other settings, e.g.: android { ... }
            dependencies {
                    compile files('libs/abc.jar')
            }
    }

(Etapas mais detalhadas aqui: estendendo o arquivo cordova gradle para incluir os serviços do google )

  1. No terminal, faça:

cordova build android

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.