gpt4 book ai didi

gradle - 如何基于 gradle 命令行将 javaagent 应用于 gretty 插件?

转载 作者:行者123 更新时间:2023-12-03 06:01:06 26 4
gpt4 key购买 nike

这个问题是具体的,但它更像是一个一般的“如何在 gradle 中做到这一点”的问题。

我有一个演示 java web 应用程序,我可以使用 gretty 插件运行它。我想根据命令行标志有选择地控制是否将 javaagent 应用于 gretty 进程的 jvmArgs。代理 jar 的位置是通过从虚拟配置中获取其路径来获知的:

configurations {
agent
}
dependencies {
...
agent group: 'com.foo', name: 'foo-agent', version: '1.0'
}

我知道我可以使用以下方式访问 jar 文件位置:
project.configurations.agent.find { it.name.startsWith("foo-agent") }

如何根据命令行属性有选择地将其应用于 gretty jvmArgs 配置,例如
gradle -PenableAgent

最佳答案

我最终通过创建一个任务并在运行 war 之前简单地调用它来解决这个问题:

task agent {
doFirst {
def agentJar = project.configurations.agent.find { it.name.startsWith("foo-agent") }
gretty.jvmArgs << "-javaagent:" + agentJar
}
}

然后我可以简单地调用:
gradle agent appRunWar

关于gradle - 如何基于 gradle 命令行将 javaagent 应用于 gretty 插件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41603483/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com