如何转换一个Eclipse Android项目使用Ant的构建?项目、Eclipse、Android、Ant

2023-09-05 05:40:32 作者:爱的鼾欢

我已经在Eclipse中的Andr​​oid项目,我想转换为可与内置的蚂蚁代替。

我怎样才能做到这一点?我曾尝试导出一个Ant构建文件,但我是pretty的肯定(与导出的文件运行Ant时也没有)这是行不通的。我不知道很多关于蚂蚁要么让一些解释也会有所帮助。

编辑:现在我似乎已经成功地创建所需的编译文件,但我需要添加项目库就像admob.jar被蚂蚁可以看到并可以用于构建。 因为我收到以下错误

  -dex:
     [回应]转换编译的文件和外部库到C:\用户\贾森
\文档\程序\机器人\ Android的SVN \干线\ GPSAlarm \ BusSnooze \ BIN \课程。
DEX ...
    [应用]
    [应用]意外的顶级例外:
    [应用] com.android.dx.util.ExceptionWithContext
    [应用]在com.android.dx.util.ExceptionWithContext.withContext(抗辩
nWithContext.java:46)
    [应用]在com.android.dx.dex.cf.CfTranslator.processMethods(CfTranslato
r.java:340)
    [应用]在com.android.dx.dex.cf.CfTranslator.translate0(CfTranslator.ja
VA:131)
    [应用]在com.android.dx.dex.cf.CfTranslator.translate(CfTranslator.jav
一:85)
    [应用]在com.android.dx.command.dexer.Main.processClass(Main.java:297)

    [应用]在com.android.dx.command.dexer.Main.processFileBytes(Main.java:
276)
    [应用]在com.android.dx.command.dexer.Main.access $ 100(Main.java:56)
    [应用]在com.android.dx.command.dexer.Main $ 1.processFileBytes(Main.jav
答:228)
    [应用]在com.android.dx.cf.direct.ClassPathOpener.processArchive(类
PathOpener.java:245)
    [应用]在com.android.dx.cf.direct.ClassPathOpener.processOne(类路径
Opener.java:130)
    [应用]在com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpe
ner.java:108)
    [应用]在com.android.dx.command.dexer.Main.processOne(Main.java:245)
    [应用]在com.android.dx.command.dexer.Main.processAllFiles(Main.java:1
83)
    [应用]在com.android.dx.command.dexer.Main.run(Main.java:139)
    [应用]在com.android.dx.command.dexer.Main.main(Main.java:120)
    [应用]在com.android.dx.command.Main.main(Main.java:87)
    [应用]产生的原因:显示java.lang.NullPointerException
    [应用]在com.android.dx.cf code.ConcreteMethod< INIT>(ConcreteMethod.j
AVA:84)
    [应用]在com.android.dx.dex.cf.CfTranslator.processMethods(CfTranslato
r.java:243)
    [应用] ... 14更多
    [应用] ...同时处理< INIT> ()V
    [应用] ...在处理COM /谷歌/安卓/应用程序/分析/ AnalyticsRecei
ver.class
    [应用]
    [应用] 1错误;中止
 

解决方案

运行android更新项目-p。 在命令行上,在你的项目将创造的基础文件夹必要的build.xml 和支持文件Ant构建。

I have an Android project in Eclipse I would like to convert to be built with Ant instead.

如何用Eclipse创建一个Android项目

How can I achieve this? I have tried exporting an Ant build file but I'm pretty sure that's not going to work (nor does it when running ant with the exported file). I do not know much about Ant either so some explanation would also help.

EDIT: now I seem to have managed to create the needed build file but I need to add the projects libs like admob.jar to be seen by ant and used to build. as I am getting the following error

        -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

解决方案

Running android update project -p . on the command line, in the base folder of your project will create the necessary build.xml and supporting files for an Ant build.