Cómo convertir un proyecto de Eclipse Android para utilizar Ant para construir?
-
10-10-2019 - |
Pregunta
Tengo un proyecto Android en Eclipse que le gustaría convertir a construirse con Ant en su lugar.
¿Cómo puedo lograr esto? He intentado exportar un fichero de construcción Ant pero estoy bastante seguro de que no va a trabajar (ni tampoco cuando se ejecuta hormiga con el archivo exportado). No sé mucho acerca de hormiga, ya sea de manera alguna explicación también ayudaría.
EDIT: ahora parece que han conseguido crear el fichero de construcción necesaria, pero tengo que añadir las librerías proyectos como admob.jar para ser visto por las hormigas y se utiliza para construir. como estoy consiguiendo el error siguiente
-dex:
[echo] Converting compiled files and external libraries into C:\Users\Jason
\Documents\Programming\Android\Android SVN\trunk\GPSAlarm\BusSnooze\bin\classes.
dex...
[apply]
[apply] UNEXPECTED TOP-LEVEL EXCEPTION:
[apply] com.android.dx.util.ExceptionWithContext
[apply] at com.android.dx.util.ExceptionWithContext.withContext(Exceptio
nWithContext.java:46)
[apply] at com.android.dx.dex.cf.CfTranslator.processMethods(CfTranslato
r.java:340)
[apply] at com.android.dx.dex.cf.CfTranslator.translate0(CfTranslator.ja
va:131)
[apply] at com.android.dx.dex.cf.CfTranslator.translate(CfTranslator.jav
a:85)
[apply] at com.android.dx.command.dexer.Main.processClass(Main.java:297)
[apply] at com.android.dx.command.dexer.Main.processFileBytes(Main.java:
276)
[apply] at com.android.dx.command.dexer.Main.access$100(Main.java:56)
[apply] at com.android.dx.command.dexer.Main$1.processFileBytes(Main.jav
a:228)
[apply] at com.android.dx.cf.direct.ClassPathOpener.processArchive(Class
PathOpener.java:245)
[apply] at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPath
Opener.java:130)
[apply] at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpe
ner.java:108)
[apply] at com.android.dx.command.dexer.Main.processOne(Main.java:245)
[apply] at com.android.dx.command.dexer.Main.processAllFiles(Main.java:1
83)
[apply] at com.android.dx.command.dexer.Main.run(Main.java:139)
[apply] at com.android.dx.command.dexer.Main.main(Main.java:120)
[apply] at com.android.dx.command.Main.main(Main.java:87)
[apply] Caused by: java.lang.NullPointerException
[apply] at com.android.dx.cf.code.ConcreteMethod.<init>(ConcreteMethod.j
ava:84)
[apply] at com.android.dx.dex.cf.CfTranslator.processMethods(CfTranslato
r.java:243)
[apply] ... 14 more
[apply] ...while processing <init> ()V
[apply] ...while processing com/google/android/apps/analytics/AnalyticsRecei
ver.class
[apply]
[apply] 1 error; aborting
Solución
android update project -p .
en la línea de comandos, en la carpeta base de su proyecto creará el build.xml
necesaria y archivos de soporte para una construcción Ant.
Otros consejos
Se puede crear archivo de generación Ant directamente desde Eclipse en sí .. en el menú Archivo
Estos son los pasos para crear build.xml para cualquier proyecto en Eclipse
Archivo -> Exportar -> General -.> Ant Buildfiles y selecciona proyecto necesario para crear un fichero de construcción
Si bien puede haber ninguna "Configuración Ejecutar a Ant" característica todavía se puede abrir la configuración de ejecución y ver la configuración.
El sitio de desarrolladores de Android tiene una sección sobre el uso de "Otros entornos de desarrollo" ; aquí cubren un poco sobre el uso de Ant para compilar si está familiarizado con Ant ya.