2012-03-26 86 views
2

我正在調用Jasper ant任務,並且我想設置org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING環境變量。我可以將ANT_OPTS設置爲,它可以正常工作。不過,我想要一個可以放入build.xml的設置,所以我不需要告訴我的隊友他們需要設置ANT_OPTS。將環境變量傳遞給ant任務,沒有ANT_OPTS

我已經試過

<property name="env.org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING" 
    value="false"/> 

,但似乎並沒有工作。

如何將環境變量傳遞給一個ant任務?

編輯:通過「不工作」,我的意思是我得到一個錯誤,說屬性is quoted with " which must be escaped when used within the value 如果我通過ANT_OPTS設置它,我不會得到這個錯誤。

+0

解釋「不起作用「。你有沒有看到字符串引號在japer中轉義?我問,因爲屬性值是在你的問題的代碼塊中嘗試,但在文本部分中是錯誤的。 – DwB 2012-03-26 19:24:03

+0

我修復了XML,但它仍然無效。 – 2012-03-26 19:42:10

回答

3

使用<property>任務定義一個環境前綴:

<property environment="env"/> 

現在,你可以簡單地在前面加上env.你的環境變量,並把它當作一個已定義的Ant屬性:

<property environment="env"/> 
<echo message="My path is &quot;${env.PATH}&quot;"/> 
+0

我可能很厚 - 但我不明白這是如何幫助設置此env變量,以便JspC taskdef將它撿起來? – 2013-12-05 02:51:31

+0

您的問題是_如何將一個環境變量傳遞給一個ant任務?_。通過使用這個,該環境變量的值現在是一個Ant屬性,可用於Ant任務。如果還有其他事情發生,你需要解釋它。你的''看起來像什麼?你的錯誤信息是什麼?它的線是什麼,這個線上有什麼_task_? – 2013-12-05 15:35:05

相關問題