gpt4 book ai didi

ant - 如何从绝对路径中剥离 basedir 以获得相对路径?

转载 作者:行者123 更新时间:2023-12-03 10:49:58 26 4
gpt4 key购买 nike

在我的项目的 build.xml 中,我定义了一个属性:

<property name="somedir.dir" location="my_project/some_dir"/>
${somedir.dir}的值将是绝对路径: /home/myuser/my_project/some_dir .

我需要的只是相对路径 ./my_project/some_dir没有 ${basedir}值(value) /home/myuser .我如何使用 Ant 实现这一目标?

到目前为止,我通过将属性转换为路径然后使用“pathconvert”找到了一个解决方案,但我认为这不是一个很好的解决方案:
<path id="temp.path">
<pathelement location="${somedir.dir}" />
</path>
<pathconvert property="relative.dir" refid="temp.path">
<globmapper from="${basedir}/*" to="./*" />
</pathconvert>

还有其他(更优雅的)建议吗?

最佳答案

从 Ant 1.8.0 开始,您可以使用 relative Ant 的属性 property task为了这。

例如:

<property name="somedir.dir" location="my_project/some_dir"/>
<echo message="${somedir.dir}" />

<property name="somedir.rel" value="${somedir.dir}" relative="yes" />
<echo message="${somedir.rel}" />

造成:
 [echo] /home/.../stack_overflow/ant/my_project/some_dir
[echo] my_project/some_dir

关于ant - 如何从绝对路径中剥离 basedir 以获得相对路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2025950/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com