Лучший способ связать модуль Gradle и модуль Grails

У нас есть проект, содержащий 2 модуля; Интернет и клиент

Веб-модуль - это приложение Grails, а клиентский модуль - это в основном просто отличный код с примесью Java-кода. Клиентский модуль управляется скриптом сборки Gradle.

Модуль Grails имеет зависимости в клиентском модуле. В IntelliJ я могу без проблем определить это в конфигурации модуля. Однако при создании Grails WAR мне действительно нужно создать клиентский JAR и поместить его в WAR-файл. Мне интересно, что для этого лучше всего?


person Gregg    schedule 18.04.2012    source источник


Ответы (1)


Вот что я в итоге сделал.

В моем скрипте Gradle у меня есть следующее:

repositories {
  mavenCentral()
  flatDir {
    name "genRocketRepos"
    dirs "${System.properties['user.home']}/.genRocket/repos"
  }
}

uploadArchives {
  repositories {
    add project.repositories.genRocketRepos
  }
}

Затем я запускаю задачу uploadArchives через Gradle. Это опубликовало файл JAR в локальных репозиториях. В Grails BuildConfig.groovy я определил следующее:

repositories {
  ...
  flatDir name:'myRepo', dirs:'${userHome}/.genRocket/repo'
}

dependencies {
  ...
  runtime 'genRocket:client:1.0'
}

Теперь Grails видит зависимость и включает в путь к классам, а также помещает для меня JAR в WAR.

person Gregg    schedule 18.04.2012