Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Proyecto Android que hace referencia al proyecto "normal" de java en eclipse desde la actualización de las herramientas sdk 17

Desde la última sdk android no puedo ejecutar mis aplicaciones Android desde eclipse ya que no pueden encontrar clases que tengo en otros proyectos eclipse, que son referencias a través de la ruta de construcción "normal".

Esto definitivamente ha funcionado antes . Y no hay errores de compilación en eclipse.

Podría ser que, ahora usted tiene que marcar esos proyectos como proyectos de la biblioteca de android en caso de que sean referenciados por un proyecto androide.

Editar: parece que esta es la razón por la que está roto: http://tools.android.com/recent/dealingwithdependenciesinandroidprojects

Pero todavía tengo que averiguar cómo debería ahora hacer referencia a mis proyectos "normales" de Java para el proyecto de la aplicación de Android.

  • Obtener la estructura de clase de un proyecto android
  • ¿Cómo se pueden manejar múltiples solicitudes para llenar modelos con RXJava Observables?
  • Uso de Robolectric para probar el código que inicia una actividad
  • Visualización del archivo de forma o del archivo OSM en android como mapa
  • Variable de ruta de clase unbound java android eclipse
  • Creación de diseño de inicio de sesión como en la aplicación de facebook para Android
  • Body.setTransform no funciona dentro del oyente de contacto (andEngine y box2d)
  • BlueCove, portátil y una tableta Android con Bluetooth
  • 5 Solutions collect form web for “Proyecto Android que hace referencia al proyecto "normal" de java en eclipse desde la actualización de las herramientas sdk 17”

    En el enlace @clamp que se proporciona, hay la siguiente oración:

    Ahora, el contenedor también se rellenará con proyectos de Java que sean referenciados por Proyectos de biblioteca.

    Esto significa que podemos usar un proyecto de biblioteca vacío como un proyecto de "pegamento" entre el proyecto android y el proyecto regular de eclipse. Sólo tienes que configurarlo de esta manera:

    Android -> proyecto "pegamento" -> proyecto regular

    Depende de

    El proyecto de cola tiene que exportar el proyecto regular y tiene que ser marcado como biblioteca. En el proyecto android sólo se debe hacer referencia al proyecto de la biblioteca.

    Ahora el uso de un proyecto regular de eclipse funciona de nuevo para mí con la mínima sobrecarga del proyecto "pegamento".

    Desde la última actualización de las herramientas de compilación de eclipse, también tiene que marcar los proyectos referenciados en la pestaña 'Ordenar y exportar' de 'Java Build Path'. Esto fijó el mismo problema para mí. ¡Espero que ayude!

    Como ya se mencionó, Android no compilará y utilizará directamente sus archivos de proyecto Java. En su lugar sólo se necesitan archivos de clase precompilados .

    Aquí está mi solución, que prefiero porque no necesito un proyecto de "pegamento" solo para las bibliotecas de Android. La idea principal es proporcionar un JAR pre-construido a Android, mientras se sigue utilizando el código fuente de las bibliotecas mientras se trabaja en Eclipse:

    1. En primer lugar, asegúrese de que los proyectos de biblioteca se compilan utilizando Java 6. Java 7 no funcionará, Android ignorará silenciosamente esas bibliotecas. Compruebe tanto la configuración del espacio de trabajo (en Preferences -> Java -> Compiler ) como la configuración del proyecto individual. Elija 1.6 como nivel de cumplimiento del compilador.
    2. Haga clic derecho en su proyecto de Android -> Properties -> Java Build Path -> Projects . Agregue todos los proyectos de Java que desee utilizar en su proyecto de Android.
    3. Ahora, Eclipse conoce las clases (pero aún no la versión final de Android), por lo que los errores de compilación se resuelven y saltar a una clase conduce directamente al archivo de origen de su proyecto Java.
    4. Agregue un buildscript de hormigón en el directorio de su proyecto de Android. Este buildscript creará un JAR que contiene todos los archivos .class de tus proyectos en el subdirectorio libs (y este es el paso que permite a Android conocer tus archivos .class!). Vea a continuación el código.
    5. Ahora, y siempre que los proyectos de Java han cambiado, reconstruya el archivo JAR ejecutando el buildscript. Esto también puede ser automatizado, ver por ejemplo " Desea que un proyecto eclipse java ejecute los archivos de compilación de hormigas automáticamente "

    Aquí está el código:

     <?xml version="1.0" encoding="UTF-8" standalone="no"?> <project default="create_jar" name="Create Jar with classes from Java projects"> <target name="create_jar"> <jar destfile="libs/java-projects.jar"> <!-- "bin" is the class output folder --> <fileset dir="path/to/first/java/project/bin"/> <fileset dir="path/to/second/java/project/bin"/> <fileset dir="path/to/last/java/project/bin"/> </jar> </target> 

    He añadido un constructor de ant proyecto que copia los archivos de clase del proyecto dependiente. El archivo ant se encuentra en el proyecto android y copia los archivos de clase del proyecto referenciado. Aquí está la hormiga:

     <?xml version="1.0" encoding="UTF-8"?> <project name="CommonsCopy" default="copy" basedir="."> <target name="copy"> <copy todir="bin/classes"> <fileset dir="../Commons/bin" includes="**/*.class"> </fileset> </copy> </target> </project> 

    2 cosas para recordar:

    1. Encuentre una manera de copiar los archivos jar que utiliza el proyecto java referenciado o simplemente póngalos directamente en la carpeta libs de Android.
    2. El proyecto referenciado debe ser compilado con el nivel de cumplimiento 1.6.

    Puede definir dos proyectos (uno de Android, uno de Java de vainilla) y hacer que uno se refiera a los archivos de origen del proyecto utilizando el comando mklink en Windows para crear un cruce de directorios o un vínculo de archivo duro. No conozco el equivalente de Linux, pero debe haber uno. Si edita un archivo de origen de un proyecto, entonces el otro proyecto estará fuera de sincronización y sólo tendrá que actualizarlo. De esta manera usted no tiene que meterse con jarras o el proceso de construcción de Eclipse.

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.