ColdFusion组件从错误的路径

时间:2015-06-25 12:17:13

标签: coldfusion cfc

我正在发起一个CFC:

<cfset config = new dir.dir1.config() />

这很好用。但突然而且在我看来,如果没有给出理由,它就会启动:

<cfset config = new anotherdir.dir.dir1.config() />

虽然代码显示了第一个实例化,但是如果我删除或重命名anotherdir.dir.dir1.config文件,则会抛出一个错误,即无法找到该组件。

哪种情况会导致这种行为? 我以我的智慧走在路的尽头。

1 个答案:

答案 0 :(得分:10)

使用点表示法时,CF将首先查看相对于您所在文件夹的路径.CF可能会在检查来自根目录的路径之前,在相对于您所在文件的路径上找到cfc。

如果您的代码显示

<cfset config = new dir.dir1.config() >

并且您运行代码的文件位于“anotherdir”目录中,然后它将实例化anotherdir.dir.dir1.config。如果您在“anotherdir”之外并且无法解析相对路径,它将尝试从根目录中查找该组件。