2014-03-06 16 views
1

我有這兩個任務 -傳遞數據文件作爲通用文件

<target name="ldm-validation"> 
<property name="graphFile"  value="${tools.dir}/build-config/SPARQL/*.ttl"/> 
<record name="${tools.dir}/build-config/SPARQL/BuildLog.txt" action="start"/> 
    <foreach target="jena-sparql-validation" param="queryFile"> 
    <path> 
    <fileset dir="${tools.dir}/build-config/SPARQL/Queries"> 
     <include name="*.rq"/> 
    </fileset> 
    </path> 
    </foreach> 
<record name="${tools.dir}/build-config/SPARQL/BuildLog.txt" action="stop"/> 

</target> 

<target name="jena-sparql-validation"> 
    <java classname="arq.sparql" fork="true" outputproperty="javaresult" errorproperty="javaerror1"> 
     <arg value="--data=${graphFile}"/> 
     <arg value="--query=${queryFile}"/> 
     <jvmarg value="-Xmx1024M"/> 
     <classpath> 
      <path> 
       <fileset dir="${jena.dir}/lib"> 
       <include name="*.jar"/> 
       </fileset> 
     </path> 
     </classpath> 
    </java> 
    <fail message="Error at: ${javaerror1} in ${queryFile}"> 
     <condition> 
     <not> 
     <equals arg1="${javaerror1}" arg2=""/> 
     </not> 
     </condition> 
    </fail> 
<echo message="Result for ${queryFile} is: ${javaresult}"/> 
</target> 

Ant構建文件但是,當我運行這個它始終沒有說 -

C:\CI-POC\tools\build-config\validate.all.xml:41: Error at: Failed to load data 

這是無法使用屬性名稱'graphFile'獲取數據文件。我不確定發生了什麼問題。任何人都可以幫忙。

+0

這似乎是一個Jena程序,從ANT調用,這是失敗。 –

+0

馬克,我不認爲這是一個問題,因爲它工作正常時,我硬編碼傳遞屬性變量instaed - 數據值。 –

+0

啊,那是關鍵信息!下面回答 –

回答

1

嘗試調用編譯如下:

ant ldm-validation jena-sparql-validation 

,這樣的屬性graphFilequeryFile的值設置。

另一種選擇是創建兩個目標之間的依賴關係。

<target name="jena-sparql-validation" depends="ldm-validation"> 
相關問題