Android Studio: ¿Agregar jar como biblioteca?

Resuelto Ozzie asked hace 54 años • 36 respuestas

Estoy intentando utilizar el nuevo Android Studio pero parece que no consigo que funcione correctamente.

Estoy usando la biblioteca Gson para serializar/deserializar objetos JSON. Pero la biblioteca de alguna manera no está incluida en la compilación.

Había creado un nuevo proyecto con solo MainActivity . Copié gson-2.2.3.jar en la carpeta /libs y lo agregué como una dependencia de la biblioteca (clic derecho->Agregar como biblioteca). Esto incluye el jar en Android Studio para que se pueda hacer referencia a él desde los archivos fuente.

Cuando intento ejecutar el proyecto, no se puede compilar, así que agregué:

compile files('libs/gson-2.2.3.jar')

a las dependencias en el archivo .gradle. Después de eso se compila correctamente pero al ejecutar la aplicación aparece un archivo ClassDefNotFoundException.

¿Alguien sabe qué estoy haciendo mal?

Ozzie avatar Jan 01 '70 08:01 Ozzie
Aceptado

Llevo muchas horas luchando con lo mismo, intentando que el tarro Gson funcione nada menos. Finalmente lo descifré; estos son los pasos que tomé:

  1. Coloque el frasco Gson (en mi caso gson-2.2.4.jar) en la libscarpeta
  2. Haga clic derecho y presione 'Agregar como biblioteca'
  3. Asegúrese de que compile files('libs/gson-2.2.4.jar')esté en su build.gradlearchivo (o compile fileTree(dir: 'libs', include: '*.jar')si está utilizando muchos archivos jar)

    Editar: usar implementation files('libs/gson-2.2.4.jar')(o implementation fileTree(dir: 'libs', include: '*.jar')) en Android Studio 3.0+

  4. Realice una compilación limpia (probablemente pueda hacerlo bien en Android Studio, pero para asegurarme de que navegué en una terminal a la carpeta raíz de mi aplicación y escribí gradlew clean. Estoy en Mac OS X, el comando puede ser diferente en su sistema

Después de hacer los cuatro anteriores, empezó a funcionar bien. Creo que el paso "Agregar como biblioteca" fue el que me había saltado anteriormente y tampoco funcionó hasta que lo limpié.

[Editar: se agregó el build.gradlepaso que también es necesario como otros han señalado]

lepoetemaudit avatar May 18 '2013 20:05 lepoetemaudit

Estas son las instrucciones para agregar un archivo jar local como biblioteca a un módulo:

  1. Cree una carpeta 'libs' en el nivel superior del directorio del módulo (el mismo directorio que contiene el directorio 'src')

  2. En el build.gradle fileagregue lo siguiente para que el cierre de sus dependencias tenga:

    dependencies {
        // ... other dependencies
        compile files('libs/<your jar's name here>')
    }
    
  3. Android Studio ya debería haber configurado un contenedor gradlew. Desde la línea de comando, navegue hasta el nivel superior de su proyecto (el directorio que tiene un gradlewarchivo).

    Correr ./gradlew assemble. Esto debería compilar el proyecto con la biblioteca. Es posible que deba corregir errores en su archivo build.gradle según sea necesario.

  4. Para que Android Studio reconozca los archivos jar locales como bibliotecas para brindar soporte mientras codifica en el IDE, debe seguir algunos pasos más:

    4.1. Haga clic derecho en el módulo en el panel izquierdo y elija Open Library Settings.

    4.2. En el panel izquierdo del cuadro de diálogo, elija Libraries.

    4.3. Haga clic en el +letrero encima del panel, segundo desde la izquierda ->Java

    Menú

    4.4. Seleccione su frasco local y agréguelo al proyecto.

  5. Es posible que necesites ejecutar el ./gradlewcomando anterior una vez más.

ZenBalance avatar Aug 19 '2013 19:08 ZenBalance

En el proyecto haga clic derecho

-> new -> module
-> import jar/AAR package
-> import select the jar file to import
-> click ok -> done

Siga las capturas de pantalla a continuación:

1:

Paso 1

2:

ingrese la descripción de la imagen aquí

3:

ingrese la descripción de la imagen aquí

Verás esto:

ingrese la descripción de la imagen aquí

Ganesh Pandey avatar Aug 19 '2015 05:08 Ganesh Pandey