path - NAnt - 如何获取包含脚本的目录路径

标签 path include directory nant

我有一个通用的 NAnt 脚本(包含一些通用目标和常量),我将其包含在许多其他 NAnt 脚本中,如下所示:

<include buildfile="<path>\common.build" verbose="true" />

调用脚本位于各个文件夹中。

在此包含的脚本中,我需要从包含的脚本所在的同一目录中读取文件。 “当前目录”设置为调用脚本的目录,不包括在内。 如何获取包含脚本的目录路径?

如果我使用以下构造(在包含的脚本内):

${ path::get-directory-name(project::get-buildfile-path()) }

然后我得到调用脚本的文件夹路径,而不是包含的脚本的文件夹路径。

有什么方法可以获取其中包含的脚本的路径吗?

问候, 伊万。

最佳答案

我的建议:在调用脚本内的属性中定义被调用脚本文件的路径,如下所示:

<property name="include.buildfile.path" value="C:\foo\common.build" />
<include buildfile="${include.buildfile.path}" verbose="true" />

我是您访问所需目录路径的通用脚本,如下所示:

${path::get-directory-name(include.buildfile.path)}

关于path - NAnt - 如何获取包含脚本的目录路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12408020/

相关文章:

javascript - 如果没有扩展名,node path.extname 返回空字符串

android - 设置新路径android

c++ - 带邻接表的 Dijkstra 算法

php - 如何使用 die() 包含文件;功能?

node.js - 包括常见的 ejs View 文件并对每个不同的 View 文件进行部分修改?

python - PyCharm 告诉我 "Cannot start process, the working directory ... does not exist"

c++ - #include<utility> 在 dev c++ 头文件中

Windows XP 上的 Ruby : How to change directory of SSL certificates

java - 无法使用java创建文件夹来压缩文件?

c# - 如何在 C# 中获取 HKEY_USERS 的子文件夹名称?