Может ли Gradle обрабатывать структуру каталогов сборки, которая не соответствует соглашениям по умолчанию?

StackOverflow https://stackoverflow.com/questions/2551463

  •  23-09-2019
  •  | 
  •  

Вопрос

я работаю над + основанный проект, который имеет следующую структуру каталогов:

projectRoot/src
projectRoot/classes
projectRoot/conf
projectRoot/webservices

это прекрасно работает в но я собираюсь мигрировать в .

Есть ли способ определить структуру каталогов, не относящуюся к Maven, в Gradle, или мне следует поискать развлекаться?

Это было полезно?

Решение

С Gradle очень легко адаптироваться к любой структуре каталогов.См. Работа с исходными наборами раздел Руководства пользователя Gradle.

Другие советы

Пример с нестандартной структурой каталогов проекта (пользовательский макет):

sourceSets {
    main {
        java {
            srcDir 'sources/main/java'
        }
        outputDir = file("$workDir/client/program")
        // For older version (now deprecated):
        //output.classesDir = "$workDir/client/program"
    }
    test {
        java {
            srcDir 'sources/test/java'
        }
        outputDir = file("$workDir/client/tests")
        // For older versions (now deprecated):
        //output.classesDir = "$workDir/client/tests"
        //output.resourcesDir = "$workDir/client/tests"
    }
    resources {
        srcDirs 'sources/test/res'
    }
}

Пытаться:

sourceSets {
    main {
        java {
            srcDirs = ['src/java']
        }
        resources {
            srcDirs = ['src/resources']
        }
    }
}

или

sourceSets {
    main.java.srcDirs += 'src/java'
    main.resources.srcDirs += 'src/resources'
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top