Android 包括与Ant一起使用的Google AdMob SDK

Android 包括与Ant一起使用的Google AdMob SDK,android,ant,jar,admob,Android,Ant,Jar,Admob,我正在使用(新的?)AdMob SDK,并在上使用说明。我们应该将GoogleedMobaDSDK-4.0.4.jar文件集成到我们的项目中。问题是:我们如何使用Ant做到这一点?我在Eclipse中工作得很好(它会自动进入.classpath文件),但是在Ant中,当Ant发布时,它会抛出很多“找不到”的问题 在哪里以及如何包含对该jar的引用?我想我应该在build.xml中这样做,但我不知道该怎么做 我将源文件夹复制到其他地方,这样它就不会弄乱我的eclipse项目文件夹 //编辑: 让我

我正在使用(新的?)AdMob SDK,并在上使用说明。我们应该将
GoogleedMobaDSDK-4.0.4.jar
文件集成到我们的项目中。问题是:我们如何使用Ant做到这一点?我在Eclipse中工作得很好(它会自动进入
.classpath
文件),但是在Ant中,当
Ant发布时,它会抛出很多“找不到”的问题

在哪里以及如何包含对该jar的引用?我想我应该在
build.xml
中这样做,但我不知道该怎么做

我将源文件夹复制到其他地方,这样它就不会弄乱我的eclipse项目文件夹

//编辑:

让我更具体一点:如果我只是将jar放入
libs
文件夹,它会自动工作,但我想知道如果jar位于其他地方,我是否可以使用jar<不管怎样,我的问题解决了。。。我可以把它编译成libs。我将把这当作一个好奇的问题。不要着急

下面是.classpath文件。让我说它只会在Eclipse中起作用,但Ant似乎没有使用它:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="gen"/>
    <classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
    <classpathentry kind="src" path="/android_licensing"/>
    <classpathentry kind="lib" path="C:/Users/David/Documents/program/eclipse/GoogleAdMobAdsSdk-4.0.4.jar"/>
    <classpathentry kind="output" path="bin"/>
</classpath>
我已经试着研究了main_规则,我可以看到它在哪里声明libs文件夹作为jar的位置,但是我仍然想知道是否有一种简单的方法,每个项目的代码行都可以定制它


谢谢。

不幸的是,由于main_rules.xml中处理JAR的方式,这不容易做到:

<!-- Directory for the third party java libraries -->
<property name="jar.libs.dir" value="libs" />
<property name="jar.libs.absolute.dir" location="${jar.libs.dir}" />
<!-- create a path with all the jar files, from the main project and the
     libraries -->
<path id="jar.libs.ref">
    <fileset dir="${jar.libs.absolute.dir}" includes="*.jar" />
    <path refid="project.libraries.jars" />
</path>

它在一个目录中查找,并从其中的所有文件构建路径。鉴于admob jar有一个嵌入的版本号,我建议您坚持在project libs目录中保留一个副本

如果使用SVN,可以使用externals定义将jar拉入子目录,并使用-pre-compile处的复制任务将最新的jar移动到libs中;这完全取决于与多少人(或机器)共享代码


我想不出一种比复制jar少维护的优雅方法

你能在问题中编辑.classpath和ant错误吗?它只是发布版本,还是也达到了调试目标?谢谢您的回复。我包括了适当的细节。无论如何,让我重复一下,我把它放到libs中解决了这个问题,所以现在我可以接受它。但是正如我所说的,我只想使用一个jar来处理不同的项目(不需要将一个jar放入每个projectlibs文件夹中)。这也是我的想法。致以最诚挚的问候。我正在寻找一个优雅的解决方案,并发现与我正在做的相同:(
<!-- Directory for the third party java libraries -->
<property name="jar.libs.dir" value="libs" />
<property name="jar.libs.absolute.dir" location="${jar.libs.dir}" />
<!-- create a path with all the jar files, from the main project and the
     libraries -->
<path id="jar.libs.ref">
    <fileset dir="${jar.libs.absolute.dir}" includes="*.jar" />
    <path refid="project.libraries.jars" />
</path>