Sum*_*itk 4 php ant phpunit build.xml relative-path
我有一个像这样的目录结构和build.xml
/path-to-project/src/prj1
/path-to-project/src/prj2
/path-to-project/tests
/path-to-project/tests/build.xml
Run Code Online (Sandbox Code Playgroud)
我必须以某种方式得到路径
/path-to-project/
Run Code Online (Sandbox Code Playgroud)
在我的build.xml中
我的build.xml是这样的
<project name="php-project-1" default="build" basedir=".">
<property name="source" value="src"/>
<target name="phploc" description="Generate phploc.csv">
<exec executable="phploc">
<arg value="--log-csv" />
<arg value="${basedir}/build/logs/phploc.csv" />
<arg path="${source}" />
</exec>
</target>
</project>
Run Code Online (Sandbox Code Playgroud)
在这里,我莫名其妙地想要得到的值${source}作为/path-to-project/src/,但我没有用得到它${parent.dir}
是否可以在build.xml中获取此路径?
您可以..像在命令行上一样使用导航到父目录.
<project name="php-project-1" default="build" basedir=".">
<property name="root.dir" location=".."/>
<property name="source" location="${root.dir}/src"/>
...
</project>
Run Code Online (Sandbox Code Playgroud)
更新:更改value到location按马丁的答案,你应该接受.
您应该使用该location属性而不是value设置source属性:
<property name="source" location="src"/>
Run Code Online (Sandbox Code Playgroud)
然后,Ant将属性设置为给定位置的绝对路径.如果该位置看起来像相对路径,则相对于basedir计算绝对路径.该property任务具有其他属性,您可以使用它们进一步调整此值.
要获取您的basedir的父目录,您可以类似地使用:
<property name="parent.dir" location=".." />
Run Code Online (Sandbox Code Playgroud)
(至少在unix机器上,没有在windows上测试过.)
| 归档时间: |
|
| 查看次数: |
8409 次 |
| 最近记录: |