2012-07-25 63 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>