Gradle 多个gretty配置

Gradle 多个gretty配置,gradle,jetty,gretty,Gradle,Jetty,Gretty,我们正在用gradle做实验。我的项目有以下模块: 客户 服务器 测验 其中,服务器依赖于客户端,测试依赖于服务器 开发客户机/服务器需要运行具有某些特定配置的服务器 测试有一个定制的java exec任务,用于配置和运行fitnesse,它有两种模式—交互模式(允许您运行单个测试)和静默模式(运行整个套件) 这提供了我需要运行的服务器的3种配置: 只是服务器,开发模式 交互模式下的服务器和测试 静默模式下的服务器和测试 gretty文档似乎只允许在gretty配置中包含一个集成测试任务

我们正在用gradle做实验。我的项目有以下模块:

  • 客户
  • 服务器
  • 测验
其中,服务器依赖于客户端,测试依赖于服务器

开发客户机/服务器需要运行具有某些特定配置的服务器

测试有一个定制的java exec任务,用于配置和运行fitnesse,它有两种模式—交互模式(允许您运行单个测试)和静默模式(运行整个套件)

这提供了我需要运行的服务器的3种配置:

  • 只是服务器,开发模式
  • 交互模式下的服务器和测试
  • 静默模式下的服务器和测试
gretty文档似乎只允许在gretty配置中包含一个集成测试任务。另一个问题是这个任务必须在同一个模块中,但是将gretty放在server/build.gradle中,将tests任务放在tests/build.gradle中是很自然的

我也试着调查webapp农场,但据我所知,这是一个同时运行多个webapp的想法。

这对我很有效:

root.gradle:

buildscript {
    repositories {
        mavenLocal()
        maven { url "https://plugins.gradle.org/m2/" }
    }

    dependencies {
        classpath "org.akhikhl.gretty:gretty:1.4.0"
    }
}
server.gradle:

if (condition) {
    apply plugin: 'org.akhikhl.gretty'

    gretty {
    // some configuration here
    }
}
tests.gradle:

if (!condition) {
    apply plugin: 'org.akhikhl.gretty'

    gretty {
    // different configuration here
    }
}