我有一个运行的作曲家脚本,该脚本在类上调用静态方法。我的课对composer.json文件做了一些改动,然后使用Composer API中的Composer\Json\JsonFile
类重写它:
composer.json
{
...
"scripts": {
"my-script": "MyScriptObject::doSomething"
}
}
我的问题是,如何使用Composer API从composer update
类内部触发MyScriptObject
? 我不想使用pre-update-cmd
,因为我无法将参数传递给它。
在查看API文档时,我看到有一个Composer\Installer
类可以用来做类似的事情:Composer\Installer::create(IOInterface $io, Composer $composer)->run()
,但是它执行安装并从锁定文件中加载依赖项。我想执行更新,以便重新生成锁定文件。
有人知道API中的位置吗?
答案 0 :(得分:0)
答案就在我眼前。我要做的只是在调用run之前setUpdate()
:
Composer\Installer::create($this->io, $this->composer)->setUpdate(true)->run();
来源:https://github.com/composer/composer/blob/1.0.0-alpha3/src/Composer/Installer.php#L489