Estou usando o AndroidStudio e tenho este projeto conforme mostrado:
O que está dentro do círculo azul é myLib. myLib também precisa usar uma lib externa que está dentro do círculo vermelho e um pacote apache (círculo verde).
Então, quero fazer com que tudo isso se torne um único .jar, para que possa usá-lo em outros projetos.
Um guia passo a passo seria muito apreciado, sou um iniciante no mundo dos desenvolvedores.
Obrigado!
java
android
jar
android-studio
dum4ll3
fonte
fonte
Respostas:
Abra build.gradle para projeto de biblioteca
Escreva duas tarefas em build.gradle - deleteJar e createJar e adicione a regra createJar.dependsOn (deleteJar, build)
O código acima:
Expanda o painel gradle da direita e abra todas as tarefas em sua biblioteca-> outros. Você verá duas novas tarefas lá - createJar e deleteJar
Clique duas vezes em createJar
Assim que a tarefa for executada com sucesso, obtenha o jar gerado no caminho mencionado na tarefa createJar, ou seja, libs / xxxx.jar
copie o jar recém-gerado para a pasta lib do seu projeto necessário -> clique com o botão direito -> selecione "adicionar como biblioteca"
fonte
release
. Eu tenhodebug
edefault
, mas nenhumarelease
pasta. Qual versão do plugin você está usando? Você sabe se isso está documentado em algum lugar?release
pasta.Se você configurar o código como um módulo Java simples no Gradle, será realmente fácil fazer com que o Gradle forneça um arquivo jar com o conteúdo. Esse arquivo jar terá apenas o seu código, não as outras bibliotecas Apache das quais depende. Eu recomendo distribuí-lo dessa forma; é um pouco estranho agrupar dependências dentro de sua biblioteca, e é mais normal que os usuários dessas bibliotecas tenham que incluir essas dependências por conta própria (porque caso contrário, há colisões desses projetos já estão vinculando cópias da biblioteca, talvez de versões diferentes ) Além do mais, você evita possíveis problemas de licenciamento em torno da redistribuição do código de outras pessoas se publicasse sua biblioteca.
Pegue o código que também precisa ser compilado em um jar e mova-o para um módulo Java simples separado no Android Studio:
Esperançosamente, seu projeto deve estar sendo construído normalmente agora. Depois de fazer uma construção, um arquivo jar para sua biblioteca Java será colocado no diretório build / libs no diretório do seu módulo. Se você deseja construir o arquivo jar manualmente, pode executar sua tarefa de arquivo jar a partir da janela do Gradle:
fonte
No IDE do Android Studio, acesse a " barra Executar Anything ":
CTRL+ CTRL+
gradle CreateFullJarRelease
+ENTERDepois disso, você encontrará seu artefato nesta pasta em seu projeto
Build > Intermediates > Full_jar > Release > CreateFullJarRelease > full.jar
OU
O Gradle já tem um
Task
para isso, no menu lateral do gradle, abaixo daother
pasta.Em seguida, role para baixo
createFullJarRelease
e clique nele.Depois disso, você encontrará seu artefato nesta pasta em seu projeto
Build > Intermediates > Full_jar > Release > CreateFullJarRelease > full.jar
fonte
build\intermediates\intermediate-jars\release
classes.jar
,,full.jar
eres.jar
. Devo importar todos os arquivos jar sempre que quiser usá-los?Basta adicioná-lo ao build.gradle do módulo java. Incluirá bibliotecas dependentes no arquivo.
Isso resultará no arquivo [module_name] / build / libs / [module_name] .jar.
fonte
O arquivo .jar será gerado automaticamente quando você compilar / executar seu aplicativo.
Você pode encontrar seu arquivo class.jar em root_folder / app / build / intermediates / bundles / debug
fonte
Acesse a guia Gradle no Android Studio e selecione o projeto de biblioteca.
Em seguida, vá para Tarefas
Em seguida, vá para outro
Clique duas vezes em bundleReleaseaar
Você pode encontrar seus
.aar
arquivos emyour_module/build/outputs/aar/your-release.aar
fonte
.jar
não fazer.aar
a maneira que encontrei foi encontrar a saída do compilador do projeto (estrutura do projeto> projeto). em seguida, encontre a pasta compilada do módulo que deseja transformar em jar, compacte-a com zip e altere a extensão da saída de zip para jar.
fonte
fonte
Se você executar uma tarefa gradle no AndroidStudio [mais]
ou via terminal
então você será capaz de encontrar
.aar
em.aar
O arquivo (Biblioteca Android) consiste em um arquivo.jar
(Biblioteca Java) e recursos Android adicionais..aar
arquivo é um arquivo zip com aar extensão que é por isso que você pode substituir.aar
com.zip
ou correrfonte