2017-06-27 68 views
1

在netBeans 8.2中,我遇到了在build.xml文件中讀取groovy的問題。Ant似乎無法在NetBeans 8.2中正確鏈接到groovy

我有一個項目,我在其中使用內建的Ant 1.9.7通過build.xml運行我的腳本。

在這裏面,我的常規任務,我設置如下:

<property environment="env" /> 
<path id="groovy.classpath"> 
    <fileset dir="${env.GROOVY_HOME}/embeddable" /> 
</path> 
<taskdef name="groovy" classname="org.codehaus.groovy.ant.Groovy" classpathref="groovy.classpath" /> 

對於環境變量{} env.GROOVY_HOME,我已經設置了在windows下面的環境變量:

GROOVY_HOME與值C:\ Program Files文件(x86)\ Groovy \ Groovy-2.4.10

然而,我仍然有一個錯誤「」腳本失敗「時,在build.xml文件中的以下階段與Groovy達成步驟:

<groovy> 
    def corePlatformList = [] 
    [Groovy code here...] 
</groovy> 

我知道腳本工作正常,因爲它確實在Eclipse和IntelliJ中運行。

這似乎是螞蟻不能與Groovy 2.4.10出於某種原因鏈接。

回答

0

我相信你有一些微不足道的錯誤。

您需要包含庫文件。

變化來自:

<path id="groovy.classpath"> 
    <fileset dir="${env.GROOVY_HOME}/embeddable" /> 
</path> 

要:

<path id="groovy.classpath"> 
    <fileset dir="${env.GROOVY_HOME}/embeddable"> 
     <include name="**/groovy-all-*.jar"/> 
    </fileset> 
</path> 

編輯:基於OP評論

下面是完整的build.xml文件,我可以看到它的工作。

<project name="MyProject" default="runscript" basedir="."> 
    <path id="groovy.classpath"> 
     <fileset dir="d:/softwares/groovy-2.4.5/embeddable"> 
     <include name="**/groovy-all-*.jar"/> 
     </fileset> 
    </path> 
    <taskdef name="groovy" classname="org.codehaus.groovy.ant.Groovy" classpathref="groovy.classpath" /> 
    <target name="runscript" 
      description="compile the source"> 
     <groovy> 
     def corePlatformList = [1,2,3,4] 
     println corePlatformList   
    </groovy> 
    </target> 
    </project> 
+0

好主意,但它不能解決問題 –

+0

您是否嘗試過調試ant腳本?發生什麼事?你是如何測試的? – Rao

+0

@TheHiddenSoul,請檢查編輯,我可以看到它的工作。 – Rao