【发布时间】:2011-12-09 23:40:49
【问题描述】:
我正在创建一个 PHP 项目,我希望分发 2 个版本:免费版本和专业版本。
增强功能都在某些文件中,所以我只需“跳过”它们即可创建免费版本。
我的问题是:实现这一目标的最佳方法是什么?
我可以列出 build.xml 文件中的每个文件(它们最多为 20 个),但它非常难看,而且如果我忘记更新列表,我会添加这些文件...
我考虑过使用 contains 关键字,但它会减慢我的构建速度?
编辑
这是我的 build.xml 文件:
<project name="MyProject" default="build" basedir=".">
<property name="buildDir" value="${basedir}/build"/>
<property name="componente" value="${basedir}/trunk/componente"/>
<property name="backend" value="${componente}/backend"/>
<property name="frontend" value="${componente}/frontend"/>
<target name="build" depends="cleanup, pro, free" />
<!-- Clean up the build directory output -->
<target name="cleanup">
<echo>Clean up build directory</echo>
<delete includeemptydirs="true">
<fileset dir="${buildDir}" includes="**/*"/>
</delete>
</target>
<!-- Create the pro package (no file exclusion) -->
<target name="pro">
<echo>Build pro version</echo>
<zip destfile="${buildDir}/pro.zip" basedir="${componente}" />
</target>
<!-- Create the free package (file exclusion) -->
<target name="free">
<echo>Build free version</echo>
</target>
编辑 2 我的专业文件位于不同的文件夹中,因为我使用的是 MVC 模式,所以我无法移动它们
【问题讨论】:
-
你试过了吗?它奏效了吗?它是否减慢了您的构建速度?