android - Jar no coinciden! Arregle sus dependencias
eclipse (10)
Pasos para reproducir:
- crea un proyecto de Android "MyApp"
- importar ActionBarSherlock (ABS), ViewPage direccional (DVP) o cualquier otra biblioteca de código abierto que utilice la biblioteca de soporte de Android.
- Agregue las bibliotecas al proyecto "MyApp"
Registro de consola:
[2013-04-17 14:27:12 - MyApp] Found 2 versions of android-support-v4.jar in the dependency list,
[2013-04-17 14:27:12 - MyApp] but not all the versions are identical (check is based on SHA-1 only at this time).
[2013-04-17 14:27:12 - MyApp] All versions of the libraries must be the same at this time.
[2013-04-17 14:27:12 - MyApp] Versions found are:
[2013-04-17 14:27:12 - MyApp] Path: C:/Users/santhosh/My_Workspace/DVP_library/libs/android-support-v4.jar
[2013-04-17 14:27:12 - MyApp] Length: 140011
[2013-04-17 14:27:12 - MyApp] SHA-1: fc834ac8147bc4ed0b555f90f500a57d4232c448
[2013-04-17 14:27:12 - MyApp] Path: C:/Users/santhosh/My_Workspace/abs_library/libs/android-support-v4.jar
[2013-04-17 14:27:12 - MyApp] Length: 271754
[2013-04-17 14:27:12 - MyApp] SHA-1: 53307dc2bd2b69fd5533458ee11885f55807de4b
[2013-04-17 14:27:12 - MyApp] Jar mismatch! Fix your dependencies
Sé que se supone que debo eliminar android-support-v4.jar de la carpeta libs y mantener solo una copia para todos. Pero eso no soluciona mi problema.
Cuando intento eliminar el android-support-v4.jar de MyApp , me da el siguiente error.
Problems encountered while deleting resources.
Could not delete ''C:/Users/santhosh/My_Workspace/MyApp/libs/android-support-v4.jar''.
Cuando trato de eliminar el android-support-v4.jar de ABS , me da el siguiente error
????? cannot be resolved to a type error.
He intentado limpiar el proyecto, arreglar las propiedades del proyecto. Reinicia eclipse, compila, importa y vuelve a agregar. Intenté copiar el contenedor de soporte en la carpeta libs de una biblioteca a otra. elimine el jar de soporte en ambas bibliotecas y agréguelo al proyecto MyApp. Nada me ha funcionado.
si trato de agregar una sola biblioteca, funciona bien. Estoy enfrentando el problema al tratar de agregar 2 o más bibliotecas a un solo proyecto.
error al obtener dos bibliotecas en MyApp:
The project was not built since its build path is incomplete.
Cannot find the class file for android.support.v4.app.FragmentActivity.
Fix the build path then try building this project MyApp Unknown Java Problem
The type android.support.v4.app.FragmentActivity cannot be resolved. It is indirectly referenced from required .class files MyActivity.java/MyApp/src/com/santhosh/myapp line 10 Java Problem
Jar mismatch! Fix your dependencies MyApp Unknown Android Dependency Problem
Use un proyecto de biblioteca solo para la biblioteca de soporte
A partir de ADT 22 , usando Eclipse Juno
No creo que ninguna de las anteriores sean realmente las mejores respuestas. Tampoco creo que se recomiende usar la función de external jar
en Eclipse (AFAIK).
Por el contrario, lo que funcionó para mí es crear un proyecto de biblioteca vacío por separado.
Luego, use Android tools
> Add Support Library
para obtener la versión más reciente que necesita o desea.
A continuación, elimine el jar de lib de soporte de todos los demás proyectos .
Finalmente, para cada proyecto que lo requiera, agregue una referencia a su nuevo proyecto de biblioteca
(project properties)
> Android
> (Library box)
> Add...
Entonces, todos sus proyectos tendrán una única fuente para usar y actualizar la biblioteca de soporte. Esto también hace que los javados sean más fáciles de poner en funcionamiento.
Para obtener información sobre cómo configurar javadocs, consulte:
¿Cómo adjuntar javadoc o fuentes a los archivos jar en la carpeta libs?
El desajuste de jar ocurre cuando usa proyectos de biblioteca en su aplicación y ambos proyectos usan el mismo jar con una versión diferente, así que simplemente verifique todos los proyectos de biblioteca conectados en su aplicación. si existe alguna discrepancia, elimínela.
si el proceso anterior no funciona, simplemente elimine la dependencia del proyecto de la ruta de compilación y agregue nuevamente los proyectos de la biblioteca y compile la aplicación.
Actionbarsherlock tiene la biblioteca de soporte en él. Esto probablemente causa un conflicto si la biblioteca de soporte también está en su proyecto principal.
Retire android-support-v4.jar
del directorio libs de su proyecto.
También retire android-support-v4.jar
de su segunda biblioteca y vuelva a intentarlo.
Jar Mismatch Found 2 versiones de android-support-v4.jar en la lista de dependencias
Creo que creas un nuevo espacio de trabajo e importas todos los proyectos correctamente con su lib y también agregas el jar externo android-support-v4.jar
en el paquete adb en los archivos adicionales de android-support-v4.jar
. Creo que es un trabajo para ti Espero lo mejor
Y también use la lib de soporte de Android, puede ser de ayuda y también actualice su paquete de adt
Creo que necesita su paquete de soporte tanto en la Biblioteca como en la aplicación. Sin embargo, para solucionar esto, asegúrese de tener el mismo archivo en ambas ubicaciones (misma suma de comprobación).
Simplemente copie el archivo del paquete de soporte desde una ubicación y copie en otra, luego limpie + actualice su biblioteca / proyecto y ya estará listo para comenzar.
En mi caso, había otro directorio dentro de mi espacio de trabajo, que tenía el mismo archivo jar que el de mi proyecto. No había creado ese directorio ni nada en él. Fue creado por Eclipse, creo. Acabo de borrar ese directorio y simplemente funciona bien.
Estoy de acuerdo con pjco. La mejor forma es explicar el método oficial en Support Library Setup en el tutorial en developer.android.com .
Luego, en el "explorador de paquetes" de Eclipse, expanda su proyecto principal y elimine android-support-v4.jar de la carpeta "libs" (como Pratik Butani suggested ).
Esto funcionó para mí.
No incluya android-support-v4 en la biblioteca, en su lugar, puede agregarlo a su proyecto como un contenedor externo utilizando el menú de ruta de acceso> agregar un contenedor externo
A veces tienes que limpiar tu proyecto.
Retire el archivo android-support-v4.jar
de la carpeta libs de su proyecto.
Haga clic derecho en su proyecto -> Herramienta Android -> Agregar biblioteca de soporte