2016-04-13 4 views
0

Мы переезжаем из Maven в Gradle, и я застрял в проблеме ниже. В нашем pom.xml мы имеем это:Преобразование ресурсов Maven для ресурсов градиента

<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> 

У нас есть модульный тест, который делает

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

Я не хочу, чтобы изменить pom.xml как структура необходима для развертывания причин, пока мы полностью мигрируем в Gradle. Я пытаюсь сделать эквивалент в Gradle с не большим успехом:

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

А имеют несколько проблем с этим: 1. файлы в конфиге/каталог directory1 и конфигурации/каталог directory2 копируются в корневой каталог папке ресурсов. Я хотел бы сохранить структуру такой же, чтобы в каталоге ресурсов был один каталог config, а затем config dir имел бы каталог1 и каталог2. 2. Я могу установить output.resourcesDir, как показано, однако, что означает, что я должен изменить свой Java код

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

, который является тем, что я должен избегать.

Thankyou

ответ

Смежные вопросы