Cómo crear un archivo .jar desde un proyecto de Android Studio

Estoy usando AndroidStudio y tengo este proyecto como se muestra:

Introduzca aquí la descripción de la imagen

Lo que hay dentro del círculo azul es myLib. MyLib también necesita usar un lib externo que esté dentro del círculo rojo, y un paquete de apache (círculo verde).

Así que quiero hacer que todo esto se convierta en un solo .jar, así que puedo usarlo en otros proyectos.

Una guía paso a paso sería muy apreciada, soy un principiante en el mundo del desarrollador.

¡Gracias!

  • Abrir build.gradle para el proyecto de biblioteca Introduzca aquí la descripción de la imagen

  • Escribe dos tareas en build.gradle – deleteJar y createJar y agrega la regla createJar.dependsOn (deleteJar, build) Introduzca aquí la descripción de la imagen

El código de arriba:

task deleteJar(type: Delete) { delete 'libs/logmanagementlib.jar' } task createJar(type: Copy) { from('build/intermediates/bundles/release/') into('libs/jars/') include('classes.jar') rename('classes.jar', 'logmanagementlib.jar') } createJar.dependsOn(deleteJar, build) 
  • Expanda el panel gradle desde la derecha y abra todas las tareas bajo yourlibrary-> otros. Verás dos tareas nuevas allí: createJar y deleteJar Introduzca aquí la descripción de la imagen

  • Haga doble clic en createJar Introduzca aquí la descripción de la imagen

  • Una vez que la tarea se ejecute correctamente, obtenga el jar generado de la ruta mencionada en la tarea createJar ie libs / xxxx.jar Introduzca aquí la descripción de la imagen

  • Copia pasado el frasco en la carpeta lib del proyecto requerido -> tecleo derecho -> seleccione "agrega como biblioteca"

Si configura el código como un módulo Java simple en Gradle, entonces es muy fácil que Gradle le dé un archivo jar con el contenido. Ese archivo jar tendrá sólo su código, no las otras bibliotecas de Apache de las que depende. Recomiendo distribuirlo de esta manera; Es un poco extraño agrupar dependencias dentro de su biblioteca, y es más normal que los usuarios de esas bibliotecas tengan que incluir esas dependencias por su cuenta (porque de lo contrario hay colisiones de esos proyectos ya están enlazando copias de la biblioteca, quizás de diferentes versiones ). Además, evita posibles problemas de licencias en la redistribución del código de otras personas si va a publicar su biblioteca.

Tome el código que también necesita ser compilado en un tarro, y muévalo a un módulo Java plano separado en Android Studio:

  1. Menú Archivo > Nuevo módulo … > Biblioteca Java
  2. Configure la biblioteca, el nombre del paquete Java y los nombres de clases en el asistente. (Si no desea que cree una clase para usted, sólo puede eliminarla una vez que se crea el módulo)
  3. En tu código de Android, configura una dependencia en el nuevo módulo para que pueda usar el código en tu nueva biblioteca:
  4. Archivo > Estructura del proyecto > Módulos > (su módulo Android) > Dependencias > + > Dependencia del módulo . Vea la captura de pantalla a continuación: Introduzca aquí la descripción de la imagen
  5. Elija su módulo de la lista en el cuadro de diálogo que aparece: Introduzca aquí la descripción de la imagen

Esperemos que su proyecto debe estar construyendo normalmente ahora. Después de hacer una compilación, un archivo jar para su biblioteca Java se colocará en el directorio build / libs en el directorio de su módulo. Si desea crear el archivo jar a mano, puede ejecutar su tarea de archivo de construcción jar desde la ventana Gradle: Introduzca aquí la descripción de la imagen

Simplemente agregue esto a build.gradle de su módulo java. Incluirá bibliotecas dependientes en el archivo.

 mainClassName = "com.company.application.Main" jar { manifest { attributes "Main-Class": "$mainClassName" } from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } } } 

Esto resultará en el archivo [module_name] / build / libs / [module_name] .jar.

La manera que encontré era encontrar la salida del compilador del proyecto (estructura del proyecto> proyecto). Entonces encuentre la carpeta complied del módulo que usted desea dar vuelta a un tarro, lo comprime con la cremallera y cambia la extensión de la salida de la cremallera a la jarra.

  • Crear jar para el proyecto androide en eclipse
  • Cómo crear un archivo jar desde android studio
  • ¿Es posible incluir el diseño y otros recursos en un tarro de Android?
  • ¿Por qué Android Studio no reconoce las importaciones de la biblioteca .jar?
  • Erro de Xalan.jar al crear un proyecto android
  • Error al importar jar en un proyecto android
  • Cómo obtener el archivo JAR para la clase sun.misc.BASE64Encoder?
  • Cómo agregar epublib a Android Studio y ejecutarlo
  • ¿Por qué consigo Link de clase falló al importar un jar en un proyecto de Android en Eclipse?
  • Intellij: android-support-v4.jar in incluido en actionBarSherlock y Project => IllegalArgumentException
  • Creación de un SDK de producto: ¿Cómo puedo añadir un lib nativo (.so) y un jar con el SDK que estoy creando?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.