我试图简化我的package.xml
文件,因为它包含许多
<phprelease>
<filelist>
<install as="path/to/my/Class.php" name="classes/path/to/my/Class.php" />
<!-- Many more of this -->
</filelist>
</phprelease>
根据Manual,应该可以通过使用baseinstalldir
- 属性去除相对路径,但忽略它的一种(一种),或者导致好奇的路径名。例如
<dir name="/">
<dir name="classes">
<file baseinstalldir="/path/to/my" name="path/to/my/Class.php" role="php" />
</dir>
</dir>
将文件安装到path/to/my/classes/path/to/my/Class.php
,这显然是废话。
有没有人知道从路径中删除一个文件夹的解决方案,这不需要大量的install-as
- 元素?
更新
看来,梨包装商在将其放入包装之前会重写package.xml
。它执行的一个步骤是,它使contents
- 部分变平。
<dir name="/">
<dir name="classes">
<file baseinstalldir="/path/to/my" name="path/to/my/Class.php" role="php" />
</dir>
</dir>
变为
<dir name="/">
<file baseinstalldir="/path/to/my" name="classses/path/to/my/Class.php" role="php" />
</dir>
安装程序将此解析为path/to/my/classes/path/to/my/Class.php
当然......