2012-06-04 34 views
0

我有一個由gradle管理的多模塊項目。目錄結構如下:gradle - 多個模塊項目 - 螞蟻錯誤執行目錄

  • 監控
    • 客戶
    • 服務器

當我調用監測水平我得到以下exeception 'gradle這個戰爭':

「監測/ js不存在」。

它來自客戶端的的build.gradle:因爲上述任務是對項目的根目錄下執行時

task copyJs << { 

    'mkdir src/main/webapp/js'.execute() 

    def ant = new groovy.util.AntBuilder() 
    ant.copy(todir: 'src/main/webapp/js') { 
      fileset(dir: 'js') { 
       include(name: '**/*.js') 
      } 
    } 
} 

的異常。如何將其更改爲在適當的(客戶端)級別上執行?如何更改使用的ant任務的basedir?

回答

1

應作爲解釋here

task copyJs << { 

    file('src/main/webapp/js').mkdir() 

    copy { 
     into 'src/main/webapp/js' 
     from('js') { 
      include '**/*.js' 
     } 
    } 
} 
2

另一種選擇是使用副本任務:

task copyJs(type:Copy){ 
    into('src/main/webapp/js') 
    from('js') { 
     include '**/*.js' 
    } 
} 

這樣做的好處,即輸出目錄將自動創建,如果它不仍然存在。使用複製任務而不是複製操作的另一個好處是,複製任務支持增量生成執行(最新檢查)。

關於, René