包装/ Mavenizing commonsware组件

时间:2011-10-11 19:14:35

标签: android maven commonsware-cwac

我在我的android项目中使用合并列表,到目前为止,我刚刚将源代码推送到我的src根目录中。但是我没有修改任何东西所以我认为是时候将这些东西包含在库中了。我克隆了第一个回购并且:

$ ant
Buildfile: /Users/user/dev/projects/cwac-sacklist/build.xml

BUILD FAILED
/Users/user/dev/projects/cwac-sacklist/build.xml:49: taskdef class com.android.ant.SetupTask cannot be found
 using the classloader AntClassLoader[]

Total time: 0 seconds

看起来这个蚂蚁脚本正在寻找由“android”工具创建的一些东西..但我没有看到任何文档..但我看到缺少的道具sdk.dir ..所以我在本地创建.properties ..但后来我得到了:

/Users/user/dev/libs/android-sdk-mac_x86/tools/ant/lib_rules.xml:126: Reference android.libraries.src not found.

打包这些东西的正确方法是什么,所以我可以把它推到我当地的maven回购中?或者更好的是,我在哪里可以预先找到它或在现有的maven回购中找到它?

更新 - 2014-07-08

看起来commonsware现在把所有这些东西放在一个合适的回购中:

来自:https://github.com/commonsguy/cwac-sacklist

repositories {
    maven {
        url "https://repo.commonsware.com.s3.amazonaws.com"
    }
}

dependencies {
    compile 'com.commonsware.cwac:sacklist:1.0.0'
}

1 个答案:

答案 0 :(得分:3)

您的第一个错误是标准错误,是由repo中的构建文件与您的构建工具版本之间的差异引起的。只需运行:

android update project -p ...

其中...是相关项目的路径,用于更新构建文件。

您的第二个错误是通过在build.xml标记后面的<setup/>添加以下行来解决的:

<path id="android.libraries.src"><path refid="project.libraries.src" /></path>
<path id="android.libraries.jars"><path refid="project.libraries.jars" /></path>

您会在MergeAdapterbuild.xml中看到这些行,但它们显然不在SackOfViewsAdapter build.xml文件中,因为我没有触及该项目一段时间。

  

或者更好的是,我在哪里可以预先找到它或在现有的maven回购中找到它?

如果有,那是非官方的,因为我不是Maven用户。