Pregunta Cómo importar Action Bar Sherlock al proyecto gradle?


Importé Module to Android Studio mediante los pasos publicados en esta pregunta: Problemas al importar un proyecto a Android Studio con respecto a ActionBarSherlock

El IDE está funcionando bien, pero no afecta la construcción. De Android Studio: ¿Las dependencias de Library Project se seleccionan de project.properties?

Si usa Gradle, project.properties se ignora por completo. No debe usar la Configuración del módulo para agregar dependencias ahora, ya que solo cambia el IDE, pero no el sistema de compilación basado en Gradle (lo arreglaremos en versiones posteriores).

He modificado las dependencias de build.gradle

dependencies {
    compile files('libs/android-support-v4.jar')
    compile project(":ActionBarSherlock")
}

Pero build imprime un error diferente ahora: Gradle:

FAILURE: Build failed with an exception.
* Where:
Build file '...PATH.../PROJECT_NAME/PROJECT_NAME/build.gradle' line: 13
* What went wrong:
A problem occurred evaluating project ':PROJECT_NAME'.
> Project with path ':ActionBarSherlock' could not be found in project ':PROJECT_NAME'.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.

22
2018-05-31 10:07


origen


Respuestas:


Solo un aviso: por el momento, el soporte adecuado para importar librerías externas que incluyen recursos (archivos de la biblioteca aar) todavía no parece ser compatible. Es la razón por la cual ActionBarSherlock todavía no está lanzando su proyecto como un archivo aar. Sin embargo, si coloca el código de la biblioteca externa (ActionBarSherlock) en el directorio de su proyecto, debería poder funcionar.

Ahora, para que funcionen varios proyectos, cree un archivo llamado 'settings.gradle' en la raíz de su proyecto y coloque las siguientes líneas allí:

include 'actionbarsherlock'
include 'yourproject'

Ahora asegúrese de tener los dos subdirectorios en la misma carpeta que gradle.settings: actionbarsherlock y yourproject. En esos subdirectorios debe ser el archivo de compilación (build.gradle) y el resto de su proyecto. La estructura debería ser algo como esto:

Proyecto
| - settings.gradle
| - Actionbarsherlock
| | - build.gradle
| | - AndroidManifest.xml
| | - src
| | `- *
| | - res
| | `- *
| `- ...
`- tu proyecto
    | - build.gradle
    `- src
        `- principal
            | - AndroidManifest.xml
            | - java
            | `- *
            `- res
                `- *

Esperemos que tenga sentido, aunque esta suele ser la forma en que construyes múltiples proyectos propios por tu cuenta. Por lo general, no desea que el código de las bibliotecas externas (como ActionBarSherlock) esté en su repositorio de proyectos, pero como dije, hacerlo correctamente todavía no está listo.

Además, solo un aviso, las versiones estables de ActionBarSherlock aún no tienen un archivo de compilación gradle. Use la rama de desarrollo de ActionBarSherlock desde git para obtener los archivos fuente correctos: https://github.com/JakeWharton/ActionBarSherlock/tree/dev/actionbarsherlock


11
2018-05-31 12:28



ESTA RESPUESTA ESTÁ DEPRICADA: ¡Por favor, echa un vistazo a AppCompat como un reemplazo!

dependencies {
    compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
    compile 'com.android.support:support-v4:18.0.+'
}

Encontrado eso en el sitio ActionBarSherlock y ActionBar Sherlock con Android Studio 0.2.2 

ABS ha lanzado su aar.

También una muestra que lo usa en github:

https://github.com/JakeWharton/ActionBarSherlock-Gradle-Sample

El número de versión de la biblioteca de soporte no es crítico, asegúrese de utilizar siempre la versión más actualizada permitida por su proyecto. La inclusión real del contenedor de soporte como un todo NO es opcional


23
2017-09-03 21:01



Espero que podamos mostrarle a la gente que algunas de estas bibliotecas están en desuso.

AppCompat ahora debería usarse en lugar de la objetada ActionbarSherlock.


2
2018-02-24 22:10