我正在努力掌握构建工具,而且我正在为一些基础知识而奋斗。
我在本地Win7机器上使用XAMPP。我已经设置了虚拟主机,这样我就可以处理多个应用程序(.\xampp\apache\conf\ on vhosts.conf)
所以我有这个:
app1
php
application
cache
config
controllers
core
...
views
assets
system
tests
vendor
app2
php
application
...etc现在我正在尝试安装和安装Jenkins,使用下面的指南:http://jenkins-php.org/automation.html
上面写着“自动化”..。构建脚本假设PHP_CodeSniffer和PHPMD的规则集位于build/phpcs.xml和build/phpmd.xml。
建筑从何而来?它属于哪里?
发布于 2014-08-27 14:15:29
您所指的链接是关于Ant项目以及如何与Jenkins一起使用它。我希望你已经完成了詹金斯的安装。在Ant中,您有一个XML文件(通常是build.xml),其中定义了各种目标。每个目标都要做一些工作,比如清理(上一次构建的编译二进制文件)、编译、打包等等。如果您不知道Ant脚本是如何工作的,您就必须详细了解这些细节。就build文件夹而言,如果要遍历为build.xml文件提供的build.xml,您将看到以下几行:
<arg value="${basedir}/build/phpmd.xml"/>
<arg value="--standard=${basedir}/build/phpcs.xml"/>在Ant中,basedir是完成所有路径计算的地方。有关basedir和Ant脚本的详细信息,请参阅这链接。通常,项目的输出( Java项目中的类文件)放在build文件夹下。我没有处理过PHP项目,但是从上面提到的语句中可以看出,“构建脚本假设PHP_CodeSniffer和PHPMD的规则集位于build/phpcs.xml和build /phpmd.xml。”,Ant脚本假设这两个XML文件应该位于同一个构建文件夹下。您可以将这些XML的位置更改为任何其他位置,但前提是您了解了所做的事情。
在完成build.xml文件中的定制之后,您将在Jenkins ( Build > Invoke Ant部分)中使用该文件。Jenkins将使用您定义的参数(如果有的话)简单地运行脚本。
更新:
不像你想的那样。我只是从Java项目的经验中解释了构建文件夹的重要性。在PHP中,如果您遍历Ant文件,您将意识到build目录更像是保存所有与构建相关的脚本(如phpmd.xml、phpmd.xml等)的目录。
Ant没有创建构建目录。相反,它的主要目的是确保生成目录中的子目录存在,如下所述代码所示:
<target name="prepare" depends="clean" description="Prepare for build">
<mkdir dir="${basedir}/build/api"/>
<mkdir dir="${basedir}/build/coverage"/>
<mkdir dir="${basedir}/build/logs"/>
<mkdir dir="${basedir}/build/pdepend"/>
<mkdir dir="${basedir}/build/phpdox"/>
</target>构建目录中的文件夹实际上是存储build.xml输出的目录,如下所示:
Executing the build.xml script will produce the following build directory:
build
|-- api ...
|-- coverage ...
`-- logs
|-- checkstyle.xml
|-- clover.xml
|-- crap4j.xml
|-- jdepend.xml
|-- junit.xml
|-- phploc.csv
|-- pmd-cpd.xml
`-- pmd.xmlhttps://stackoverflow.com/questions/25525341
复制相似问题