Coldfusion 在lucee或railo上的cfml文件中包含cfc中的接口函数

Coldfusion 在lucee或railo上的cfml文件中包含cfc中的接口函数,coldfusion,cfml,railo,cfc,lucee,Coldfusion,Cfml,Railo,Cfc,Lucee,我正在尝试向cfc添加一个接口,该接口在cfml文件中包含一些函数,但它会抛出一个错误消息“组件[…]未实现接口的函数[…”,它抱怨的函数在包含的cfml文件中实现,我已经在Railo4和Lucee5中对此进行了测试,得到了相同的错误,但它在coldfusion 11中有效。有人知道lucee或railo中是否有解决方法或修复方法吗 下面是重现错误的示例代码 国际cfc 公司cfc 有限公司 公共数值函数func()output=“false”{ 返回2; } index.cfm cfc=

我正在尝试向cfc添加一个接口,该接口在cfml文件中包含一些函数,但它会抛出一个错误消息“组件[…]未实现接口的函数[…”,它抱怨的函数在包含的cfml文件中实现,我已经在Railo4和Lucee5中对此进行了测试,得到了相同的错误,但它在coldfusion 11中有效。有人知道lucee或railo中是否有解决方法或修复方法吗

下面是重现错误的示例代码

国际cfc 公司cfc 有限公司

公共数值函数func()output=“false”{
返回2;
}
index.cfm

cfc=createObject(“组件”、“组件”);
writedump(cfc.func());

我发现的一个可能的解决方法是用空cfc替换包含cfml文件的原始cfc,空cfc实现接口,但也将重命名的原始cfc扩展为其他内容,通过替换原始cfc,您可以在添加接口的同时保持相同的类型。因此,示例中带有问题的更新部分如下所示

comp-to-extend.cfc 公司cfc
interface {
    public numeric function func() output="false";
}
component implements="int" {
    include "inc.cfm";
}
<cfscript>
public numeric function func() output="false"{
    return 2;
}
</cfscript>
<cfscript>
    cfc = createObject("component", "comp");
    writedump(cfc.func());
</cfscript>
component implements="int" {
    include "inc.cfm";
}
component extends="comp-to-extend" implements="int" {}