2016-04-13 49 views
0

Maven'den Gradle'a geçiyoruz ve aşağıdaki konuya takılıyorum. Maven kaynaklarını elverişli kaynaklara dönüştürme

<resources> 
    <resource> 
     <targetPath>deploy/config/directory1</targetPath> 
     <directory>config/directory1</directory> 
    </resource> 
    <resource> 
     <targetPath>deploy/config/directory2</targetPath> 
     <directory>config/directory2</directory> 
    </resource> 
    <resource> 
     <targetPath>deploy/scripts</targetPath> 
     <directory>scripts</directory> 
    </resource> 

Biz bu yapının kadar dağıtım nedenlerle gereklidir olarak

getClass().getResource("/deploy/config/directory1/somefile.txt") 

Ben pom.xml değiştirmek istemiyorum yapan bir birim testi: Mevcut pom.xml biz bu var Gradle'a tamamen göç ediyoruz. kök konumuna kopyalanır config/dizin1 ve config/dizin2 içinde 1. dosyalar:

sourceSets { 
    main { 
     java { 
      srcDirs 'src' 
     } 
     resources { 
      srcDirs = [ 
       "config/directory1", 
       "config/directory2", 
       "scripts", 
] 
// output.resourcesDir = "$buildDir/deploy" 
} 
} 

A bununla bazı sorunlar vardır: Ben pek başarı ile gradle içinde eşdeğer yapmaya çalışıyorum kaynaklar klasörü. Ben yapıyı aynı tutmak istiyorum böylece kaynak dir altında tek bir yapılandırma dizini olurdu ve sonra dizin dir dizin1 ve dizin2 olurdu. Ben kaçınmak zorunda budur

getClass().getResource("somefile.txt") 

benim java kodunu değiştirmek zorunda anlamına gelir ancak gösterildiği gibi 2. Ben output.resourcesDir ayarlayabilirsiniz. Buna

Teşekkür

cevap