是否有Class.forName的gradle等价物或更多gradle / groovy方式。
我想在gradle中实现的目标如下:
for(String name : new String[]{
MyImpl1.class.getName() ,
MyImpl2.class.getName() ,
MyImpl3.class.getName()}) {
MyInterface myInterface = (MyInterface)Class.forName(name).newInstance();
myInterface.configure();
}
MyImpl1,MyImpl2和MyImpl3实现MyInterface
答案 0 :(得分:0)
根据Guillaume LaForge's(Groovy语言的主要贡献者之一)answer here:
def name = "java.lang.Integer"// Fully qualified class name
def s = ("$name" as Class).parseInt("10")
println s
但我想如果你想要更好地控制特定的类加载器,那么Java方式Class.forName("Foo", true, this.getClass().getClassLoader())
也可以在Groovy中运行。