在 Grails 构建目标中使用 Hudson 构建参数

发布于 2024-10-09 07:28:26 字数 1779 浏览 7 评论 0原文

我在参数化构建配置中创建了两个 Hudson 字符串参数:svnRootsvnBranch

当指定我的存储库 URL 时,我可以很好地引用这些内容:${svnRoot}/${svnBranch}/subProject

但我无法将它们作为我的 Grails 构建目标的一部分进行引用: "build-applet ${svnRoot}/${svnBranch}/appletProject username password" "war --non-interactive"build-applet 调用位于 scripts\BuildApplet.groovy 的 Grails 项目中的 Gant 脚本。此尝试会产生以下错误:

groovy.lang.MissingPropertyException: 没有这样的属性:类的 svnRoot: 脚本1位于 org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:49) 在 org.codehaus.groovy.runtime.callsite.PogoGetPropertySite.getProperty(PogoGetPropertySite.java:49) 在 org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGroovyObjectGetProperty(AbstractCallSite.java:240) 在 Script1.run(Script1.groovy:1) 处 groovy.lang.GroovyShell.evaluate(GroovyShell.java:561) 在 groovy.lang.GroovyShell.evaluate(GroovyShell.java:536) 在 com.g2one.hudson.grails.GrailsBuilder.evalTarget(GrailsBuilder.java:212) 在 com.g2one.hudson.grails.GrailsBuilder.perform(GrailsBuilder.java:168) 在 hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19) 在 hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:603) 在 hudson.model.Build$RunnerImpl.build(Build.java:172) 在 hudson.model.Build$RunnerImpl.doRun(Build.java:137) 在 hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:417) 在 hudson.model.Run.run(Run.java:1337) 在 hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46) 在 hudson.model.ResourceController.execute(ResourceController.java:88) 在 hudson.model.Executor.run(Executor.java:140)

实现我的目标的最佳和/或最简单方法是什么?

I have created two Hudson String Parameters in my parametrized build configuration: svnRoot, and svnBranch.

I can reference these just fine when specifying my Repository URL: ${svnRoot}/${svnBranch}/subProject.

But I have not been able to reference them as part of my Grails Build Target: "build-applet ${svnRoot}/${svnBranch}/appletProject username password" "war --non-interactive". build-applet invokes a Gant script in the Grails project at scripts\BuildApplet.groovy. This attempt yields the following error:

groovy.lang.MissingPropertyException:
No such property: svnRoot for class:
Script1 at
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:49)
at
org.codehaus.groovy.runtime.callsite.PogoGetPropertySite.getProperty(PogoGetPropertySite.java:49)
at
org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGroovyObjectGetProperty(AbstractCallSite.java:240)
at Script1.run(Script1.groovy:1) at
groovy.lang.GroovyShell.evaluate(GroovyShell.java:561)
at
groovy.lang.GroovyShell.evaluate(GroovyShell.java:536)
at
com.g2one.hudson.grails.GrailsBuilder.evalTarget(GrailsBuilder.java:212)
at
com.g2one.hudson.grails.GrailsBuilder.perform(GrailsBuilder.java:168)
at
hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:19)
at
hudson.model.AbstractBuild$AbstractRunner.perform(AbstractBuild.java:603)
at
hudson.model.Build$RunnerImpl.build(Build.java:172)
at
hudson.model.Build$RunnerImpl.doRun(Build.java:137)
at
hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:417)
at
hudson.model.Run.run(Run.java:1337)
at
hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
at
hudson.model.ResourceController.execute(ResourceController.java:88)
at
hudson.model.Executor.run(Executor.java:140)

What is the best and or easiest way to achieve my goal?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

只是偏爱你 2024-10-16 07:28:26

通过查看 Grails 插件的 wiki 页面 (http://wiki.hudson-ci.org/display/HUDSON/Grails+Plugin),这应该可以工作。

grails build-applet ${env.svnRoot}/${env.svnBranch}/appletProject username password

如果没有,我会尝试命令行构建步骤。确保将 GRAILS_HOME 设置为脚本中的第一行,然后调用 grails.

干杯

From looking at the wiki page on the Grails plugin (http://wiki.hudson-ci.org/display/HUDSON/Grails+Plugin), this should work

grails build-applet ${env.svnRoot}/${env.svnBranch}/appletProject username password

If not, I'd try a command line build step. Make sure you set GRAILS_HOME as the first line in the script then call grails.

cheers

Lee

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文