从PHP运行Ant build.xml

Him*_*dav 0 php ant mediawiki

是否可以从PHP或网页运行Ant的build.xml?
有时候BAs想要进行构建和部署,我想通过MediaWiki页面提供这个.Mediawiki正在Windows XAMPP上运行.
是否有任何MediaWiki插件或更好的解决方案?
在线下我想传递一些build.xml变量.

ant*_*tun 6

PHP的shell_exec()函数可用于在shell中调用命令.所以你可以写一个简单的shell脚本,cd到正确的目录,设置任何环境变量并触发构建,然后从PHP调用它:

do_build.sh(位于/home/user/bin/do_build.sh)

cd /path/to/build/dir
# Set any environment variables here
export MYVAR=somevalue
ant build
Run Code Online (Sandbox Code Playgroud)

myscript.php(通过网页调用)

<?php
shell_exec("/home/user/bin/do_build.sh");
?>
Run Code Online (Sandbox Code Playgroud)

更新:既然你说你在Windows上,这里是Windows等效的,使用批处理文件:

do_build.bat(住在C:\ do_build.bat)

cd "C:\path\to\build\dir"
REM Set any environment variables here
set MYVAR=somevalue
ant build
Run Code Online (Sandbox Code Playgroud)

myscript.php(通过网页调用)

<?php
shell_exec("C:\\do_build.bat");
?>
Run Code Online (Sandbox Code Playgroud)

  • 是的,你可以传递参数.引号之间的所有内容都是命令.所以你可以做shell_exec("C:\\ do_build.bat ARGS GO HERE"),这与运行相同:C:\ do_build.bat ARGS GO HERE. (2认同)