2016-07-29 98 views
0

我是新來的NodeJS和Jake但在我的公司,他們都用它來運行單元tests.This是他們如何通過螞蟻如何解釋並運行以下ant命令?

<exec executable="cmd" dir="${nodeJsTests.basedir}/../nodejs/"> 
     <arg value="/C"/> 
     <arg value="start cmd /C &quot;npm install &amp; .\node_modules\.bin\jake local dir=${basedir} --trace &amp; pause&quot;" /> 
    </exec> 

運行單元測試從我的理解是,他們正在做下面的事情在這段代碼中,如果我錯了,請糾正我的錯誤

  1. 去nodejs driectory。
  2. 在特定位置安裝傑克(\ node_modules.bin \傑克)
  3. 運行單元測試

我想達到相同的(運行測試),而無需使用ant.I想我能夠做前兩步,但堅持在第三步。我試圖運行命令 - 傑克本地從各種目錄,但沒有成功

如果有人可以幫助我呢?

回答

1

它更容易看到發生了什麼,如果你解析字符串中的第二arg值:

npm install & .\node_modules\.bin\jake local dir=${basedir} --trace & pause 

這是爲了基本運行這3個命令的簡寫方式:

  1. npm install
  2. .\node_modules\.bin\jake local dir=${basedir} --trace
  3. pause

第一個命令安裝在您的package.json文件(大概包括jake)中定義的所有依賴關係。

第二個命令運行傑克(即安裝在node_modules內運行的前面的步驟之後文件夾中的一個)的本地版本。

第三個命令只是一個cmd util來暫停執行。

只要你安裝了依賴關係,在沒有ANT的情況下運行jake應該沒有問題(只需運行上面的第二條命令,替換${basedir}的值,並確保在與package.json相同的目錄中運行它)。