2013-10-22 219 views
3

我使用Silk4J,在我的構建中,我必須啓動代理。我使用的命令是:Ant執行命令

<exec spawn="true" executable="${env.OPEN_AGENT_HOME}/agent/openAgent.exe" /> 

它給了我這個錯誤

The ' characters around the executable and arguments are not part of the command. 

我是否需要改變呢?

回答

4

該消息不表示錯誤。

-v-verbose-d,或-debug選項分配給螞蟻,所述<exec>任務輸出其沿着與所述消息執行命令:

[exec] Current OS is Windows 7 
[exec] Executing 'cmd' with arguments: 
[exec] '/c' 
[exec] '@for %a in (C:\src\ant\ant-dir-file-local) do @echo %~ta' 
[exec] 
[exec] The ' characters around the executable and arguments are 
[exec] not part of the command. 
[exec] 10/23/2013 02:36 AM 

打破上述的例子...

[exec] Executing 'cmd' with arguments: 
       ^^
[exec] '/c' 
     ^^ 
[exec] '@for %a in (C:\src\ant\ant-dir-file-local) do @echo %~ta' 
     ^             ^

在這種情況下,每個^上方的單引號(')不是該命令的一部分。 Ant使用單引號將可執行文件名稱和每個參數封裝起來,以清楚說明命令的組成部分,以及哪些不是。 Ant可以幫助用戶在<exec>不符合預期行爲時調試Ant腳本。該信息純粹是信息性的。

+0

好的,但爲什麼我得到這個錯誤:'可執行文件和參數周圍的字符不是命令的一部分。而構建完成而不執行測試運行?!?在OpenAgent之後,它假設執行此操作: –

+0

/target> –

+1

同樣,這是一條信息性消息,不是錯誤。要理解測試未運行的原因,請使用完整的Ant腳本創建一個新問題,以及在使用「-verbose」選項運行Ant時從Ant獲得的輸出。 –

2

這是很好的做法,包在單引號中記錄的條目,使條目是否是空的,你仍然可以看到它,例如:

沒有密碼的用戶'

否則你會看到:

沒有密碼的用戶

這是誤導。 在這種情況下,它只會通知您,報價僅出於此原因而不是記錄數據的一部分。我認爲這句話有點令人困惑,因爲消極形式'不是命令的一部分',看起來像是有問題...

0

這是純粹的信息。它表明上面看到的撇號(')符號實際上並不在已經使用的命令中。 它只是「引用」您在命令中使用的字符串標記。

實施例:

[exec] Current OS is Windows 10 
[exec] Output redirected to property: git.timestamp 
[exec] Executing 'cmd.exe' with arguments: 
[exec] '/c' 
[exec] 'git' 
[exec] 'show' 
[exec] '-s' 
[exec] '--format=%ct' 
[exec] 
[exec] The ' characters around the executable and arguments are 
[exec] not part of the command. 

這表明您使用/C GIT中顯示-s --format =%克拉內部CMD,可以看到,從'/ C''git'令牌。它只是告訴你忽略'符號。它實際使用的是鏈中的git,show,-ss等標記,形成一個完整的命令。