我正在通过DSL插件管理Jenkins中的许多工作。该插件使用.groovy定义,因此我认为即使有人不使用Jenkins,但使用groovy可能也可以提供帮助。
通常,我想创建一个其他文件,该文件可以是groovy文件,JSON或YAML等。重要的是可以将该文件与我的.groovy文件连接。
在该文件中,我正在定义变量(而不是字符串),例如地址IP或其他内容。
ip_gitlab: 1.2.3.4
default_user: admin
在我的常规文件中,我希望能够使用这些变量。
这种方法在常规中可行吗?
当然可以。例如,有groovy-lang.org/json.html。
—
嗅到
如果可以在DSL插件中定义其他类路径。然后放入您将添加到classpath groovy文件的文件夹中,例如
—
daggett
class GLOBAL{ def a=111; def b=222; }
。那么在代码中您应该可以访问它GLOBAL.a
@daggett我在尝试编写时一直在尝试,并且总是出现错误:
—
rafal1337 '19
org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object 'org.codehaus.groovy.runtime.InvokerHelper$1@641eff69' with class 'org.codehaus.groovy.runtime.InvokerHelper$1' to class 'javaposse.jobdsl.dsl.JobParent'
在处理您的GLOBAL类时会发生此错误
我忘了 。对于每个定义的变量,应有
—
daggett
static
前缀。class GLOBAL{ static def a=111; static def b=222; }
。但是你的错误很奇怪。您能否显示您已声明的变量以及如何在dsl中使用它。
1.我对dsl postimg.cc/TLHK5k6h的配置 2. dsl处理postimg.cc/21F37jDs时出错
—
rafal1337 '19