2012-07-25 67 views
1

我使用ant运行我的android项目,以便使用Hudson连续运行它。我在我的mac上创建了我的build.xml,而不是导入生成的android build.xml,我复制/粘贴它,因为我必须定制一些东西。Android build.xml renderscript不支持includepath

它在我的本地机器上正常工作,但是,当我在位于服务器上的哈德森上运行此操作时。我遇到了Renderscript属性的错误。

renderscript doesn't support the "includePath" attribute 

所以,我决定取出保存在XML该行转化这段代码:

<renderscript executable="${renderscript}" 
       includePath="${android.renderscript.include.path}" 
       genFolder="${gen.absolute.dir}" 
       resFolder="${out.res.absolute.dir}/raw" 
       targetApi="${project.minSdkVersion}" 
       optLevel="${renderscript.opt.level}" 
       buildType="${build.is.packaging.debug}" 
       previousBuildType="${build.last.is.packaging.debug}"> 
      <source path="${source.absolute.dir}"/> 
     </renderscript> 

这样:

<renderscript executable="${renderscript}" 
       genFolder="${gen.absolute.dir}" 
       resFolder="${out.res.absolute.dir}/raw" 
       targetApi="${project.minSdkVersion}" 
       optLevel="${renderscript.opt.level}" 
       buildType="${build.is.packaging.debug}" 
       previousBuildType="${build.last.is.packaging.debug}"> 
      <source path="${source.absolute.dir}"/> 
     </renderscript> 

然后滑稽得到这个错误:

RenderScriptTask's 'includePath' is required. 

我正在运行相同的nt,在服务器上下载了特定于linux的SDK,并基于工具,平台工具和android-7(我支持的操作系统)进行了更新。我已经想尽了什么问题,任何帮助或指针都会很棒。

谢谢!

回答

0

这最终发生,因为我有一些文件,以通过classpath中被忽略。这是一个简单但却被忽视的错误。

2

发生此错误是因为您更新了android sdk工具以修改为20.0.1。

renderscript需要属性includePathRefId并且其路径已更改。所以,你的代码应该是:

<renderscript executable="${renderscript}" 
      includePathRefId="android.renderscript.include.path" 
      genFolder="${gen.absolute.dir}" 
      resFolder="${out.res.absolute.dir}/raw" 
      targetApi="${project.minSdkVersion}" 
      optLevel="${renderscript.opt.level}" 
      buildType="${build.is.packaging.debug}" 
      previousBuildType="${build.last.is.packaging.debug}"> 
     <source path="${source.absolute.dir}"/> 
    </renderscript> 

其中includePathRefId应该这样定义:

<path id="android.renderscript.include.path"> 
    <pathelement location="${android.platform.tools.dir}/renderscript/include" /> 
    <pathelement location="${android.platform.tools.dir}/renderscript/clang-include" /> 
</path>