squareup implementar compile code android gradle android-studio square-wire

android - implementar - retrofit code



El compilador en línea de Android Studio muestra errores rojos, pero la compilación con gradle funciona bien (9)

En mi caso, por alguna razón, la versión del complemento de Android no estaba configurada. Intenté borrar el caché y eliminar .gradle y .idea también, pero no funcionó y después de deambular durante horas, encontré esto.

He configurado mi proyecto en Android Studio para usar la biblioteca Square Wire , según esta pregunta .

Build -> Compile Project funciona bien.

2:03:10 PM Compilation completed successfully in 31 sec

Sin embargo, si abro uno de mis archivos de buffer de protocolo generados, entonces el paquete Square no se reconoce.

Otro síntoma es que los métodos heredados de la clase Square Message se muestran como errores de compilación "No se puede resolver el método" en el editor, aunque se compilan y se ejecutan correctamente.

¿Debo hacer algo más que solo agregar la dependencia en build.gradle para mi módulo en mi proyecto?


Estas soluciones no me ayudaron con el mismo problema en Android Studio 0.5.8.

Describí mi respuesta a la misma pregunta (supongo): https://.com/a/23891829/534698 Acabo de eliminar el directorio ~ / .AndroidStudioPreview (en Ubuntu). Extrañé todas las configuraciones de Android Studio, pero funciona.


Gracias a free3dom por ponerme en el camino correcto aquí.

Diagnóstico

La opción Sync Project with Gradle Files en Android Studio parece mantener las bibliotecas de Project Structure al día.

Sin embargo, en mi caso hubo algunos errores:

La ampliación del enlace (no muy obvio) mostró el detalle. Mi biblioteca de tiempo de ejecución de cable se mostraba en una ubicación incorrecta:

Esto parecía ser una resaca de mi configuración original donde había importado el JAR en una carpeta libs.

dependencies { compile fileTree(dir: ''libs'', include: ''*.jar'') }

Posteriormente lo cambié para importarlo directamente de Maven Central ( como aquí ), y parece que la configuración anterior nunca se sobrescribió con la nueva.

La solución

La solución es eliminar la dependencia de la biblioteca de la pantalla Project Structure del Project Structure y luego Sync Project with Gradle Files nuevamente.

Mas detalle

También puede ver qué ruta se está utilizando para el recurso abriendo .idea/libraries/wire_runtime_1_2_0.xml directamente.

Mi roto fue:

<component name="libraryTable"> <library name="wire-runtime-1.2.0"> <CLASSES> <root url="jar://$PROJECT_DIR$/MY_MODULE/libs/wire-runtime-1.2.0.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES />

Después de eliminar y volver a agregar la biblioteca, cambió la root url a:

<root url="jar://$USER_HOME$/.gradle/caches/artifacts-26/filestore/com.squareup.wire/wire-runtime/1.2.0/jar/44e7acbd5eb6f29698181dc3d67a60acf7efee80/wire-runtime-1.2.0.jar!/" />

Actualizar

Android Studio v0.4.4 aparentemente soluciona otros errores que tienen los mismos síntomas, por lo que si tiene una versión anterior, es posible que desee actualizarla.


Los siguientes pasos ayudan

  1. Cierre su proyecto, y en la carpeta del project/.idea elimine el project/.idea
  2. Eliminar la carpeta ~/.gradle .

Abra el proyecto nuevamente Todo debería ser resuelto.


Si todas las respuestas anteriores no funcionan para usted. Intente actualizar sus dependencias a la última versión. Funcionó para mí


Tuve este problema después de actualizar a Android Studio 3.1. Resolví el problema actualizando todos los componentes que uso. Así que cambié las siguientes entradas en mi build.gradle (aplicación):

  1. Actualice SDK (desde "compileSdkVersion 25" a "compileSdkVersion 26" o tal vez más cuando lea esta nota):

    // compileSdkVersion 25

    compileSdkVersion 26

    Comentario: Este cambio obligó al programa a descargar / instalar nueva SDK durante la próxima sincronización.

  2. Actualizar appcompat-v7:

    // implementación ''com.android.support:appcompat-v7:25.4.0''

    implementación ''com.android.support:appcompat-v7:26.1.0''

  3. Actualizar firebase:

    // implementación ''com.google.firebase: firebase-ads: 11.4.2''

    implementación ''com.google.firebase: firebase-core: 12.0.1''

    implementación ''com.google.firebase: firebase-ads: 12.0.1''

  4. En PROYECTO build.gradle, actualice google-services:

    // classpath ''com.google.gms: google-services: 3.1.0''

    classpath ''com.google.gms: google-services: 3.2.0''

  5. Actualizar gradle (de 4.4 a 4.6). De gradle-wrapper.properties: distributionUrl = https: //services.gradle.org/distributions/gradle-4.6-all.zip

Después de estos cambios, limpie el proyecto, invalide el caché / reinicio, elimine el contenido de .idea / libraries y vuelva a sincronizar (no estoy seguro del orden, pero TODAS estas actividades me resolvieron el problema).


Tuve un problema similar antes, invalidar el caché y reiniciar no lo resolvió. Acabo de hacer una Gradle Sync y todo funcionó bien.


1) Haga clic en el icono de gradle (lado derecho en el estudio de Android)

2) Haga clic en el botón Actualizar y espere a que se resuelva el problema: D


Solución simple

Ve a través del enlace y funcionó para mí.

  1. Elija la opción de File del menú en el lado superior izquierdo de Android Studio.
  2. Seleccione la opción: Invalidate Cache/Restart Se abrirá un cuadro de diálogo.
  3. Haga clic en el primer botón con la opción: Invalidate and Restart
  4. Cerrará Android Studio y lo reiniciará. Además, comenzará a volver a indexar el proyecto.

Resolvió mi problema

Vaya a Archivo > Invalidar caché / reiniciar > Invalidar y reiniciar

Fuente aquí para youtube