0

我正在使用 Jetty Gradle 插件,并尝试移植我的脚本以使用 Gretty。以下适用于 Jetty Gradle 插件:

jettyRunWar {
    // do not use "war" task, use myCustomWarTask
    dependsOn myCustomWarTask
    dependsOn.remove("war")

    webApp = myCustomWarTask.archivePath
}

我如何在 Gretty 中达到同样的效果?

4

2 回答 2

0

首先,您可能需要一些非常基本的 gretty 设置:

buildscript {
    repositories {
        // You can declare any Maven/Ivy/file repository here.
        mavenCentral()
        jcenter()
    }
    dependencies {
        classpath 'org.akhikhl.gretty:gretty:1.4.0'
    }
}

apply plugin: 'war'
apply plugin: 'java'
apply plugin: 'org.akhikhl.gretty'

gretty {
    servletContainer = 'jetty9'

    httpEnabled = true
    httpPort = 8081
    contextPath = '/WebServer'
    jvmArgs { '-ea' }

    loggingLevel = 'ALL' // options:   'ALL', 'DEBUG', 'ERROR', 'INFO', 'OFF', 'TRACE', 'WARN'
}

一旦你有了它,你就可以在农场中设置一个webapp。在此处指定您的 war 文件的路径(提供的示例是 GWT 插件放置我的位置)。

farm {
    webapp 'build/libs/web_server.war'
}

要指定依赖项

project.afterEvaluate {
    tasks.farmRun.dependsOn myCustomWarTask
}

一旦你完成了所有这些,'gradle farmRun' 将在 Gretty 中构建和运行你的 war 文件。

于 2016-10-20T15:45:10.617 回答
0

不确定最近是否有其他人遇到过这种情况,但为了后代,我只是使用:

gradlew appRunWar

还支持使用以下方式的农场:

gradlew farmRunWar
于 2018-05-31T12:59:38.707 回答