2

我创建了一个 Android 库项目,我想将它作为 jar 分发给我的客户。我的 android 项目在 /libs 下有一些外部 jars(gcm.jar、gson.jar ...),并且我在项目属性的“Order and Export”下检查了“Android Private Libraries”。

我还创建了自己的 build.xml 以创建包含外部 jar 的 jar:

 <property name="lib.dir" value="./libs"/>
<target name="jar" depends="debug">
    <jar
        destfile="bin/my-distribution.jar"
        basedir="bin/classes" >
        <fileset dir="${lib.dir}" includes="**/*.jar" />
    </jar>
</target>

我正在尝试在一个全新的 Android 项目中使用新创建的 jar。然后我将它复制/粘贴到新项目的 /libs 文件夹中并运行它。我收到以下错误消息:

    06-19 22:29:49.925: I/dalvikvm(10108): Could not find method com.google.android.gcm.GCMRegistrar.checkDevice, referenced from method XXXX 
    06-19 22:29:49.930: E/AndroidRuntime(10108): java.lang.NoClassDefFoundError: com.google.android.gcm.GCMRegistrar

在 Eclipse 上使用 Project Explorer,我可以看到我的 jar 已包含在带有外部 jar 的“Android Private Libraries”中。但是当我运行新项目时,它们似乎被忽略了......

注意:我对这两个项目都使用 jdk1.6。

有任何想法吗?

多谢了。

4

0 回答 0