jenkins - 获取类的类名

标签 jenkins groovy jenkins-pipeline

Groovy 初学者,来自 Java/Kotlin,如何获取我的类的(匿名)实现的类名?

尝试失败:

abstract class Foo {
    String name() { this.class.simpleName }
}

abstract class Foo {
    String name() { return this.class.simpleName }
}

abstract class Foo {
    String name() { return getClass().getSimpleName() }
}

abstract class Foo {
    String name() { this.metaClass.classNode.nameWithoutPackage }
}

所以显然我似乎给了一些类实例一个默认名称。我想“好吧,如果类名不起作用,让我们尝试单独命名”:

abstract class Foo {
    private final AtomicInteger counter = new AtomicInteger(0)
    String name() { "number " + this.counter.incrementAndGet() }
}

但这也不起作用,因为 counter 不是 groovy.lang.Binding 的属性

这都是在我尝试编写的 Jenkins 管道的上下文中...为什么这么难?

最佳答案

你可能想要这个...

abstract class Foo {
    String name() { this.class.name }
}

关于jenkins - 获取类的类名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48875886/

相关文章:

jenkins - 强制 Jenkins 奴隶使用内部主机?

jenkins - 如何在 Jenkins 中使用 Groovy 脚本设置 Subversion 工作区格式?

spring - 在 grails 中的 Controller 操作之间传递对象的最佳方式

groovy - jar文件如何读取自己的资源文件?

docker - 如何停止 Jenkinsfile 中正在运行的容器?

c++ - 使用 Cobertura 在 Jenkins 中显示源代码的代码覆盖率(其他机器的运行结果)

jenkins - 有条件地启用 Jenkins 声明式管道选项?

grails - g:每张 table

jenkins - 检查 jenkins 管道中是否存在文件

Jenkins 管道总是失败