对不起,我的英语不太好。所以我对作曲家有疑问。我可以从包中选择我想安装的目录,或者在安装后删除它们。例如:“yiisoft/yii”这是供应商/包。但我只想安装“yiisoft/yii/framework”目录。我不喜欢保留其他目录。我仍然找到解决我问题的最佳方法。
问问题
1019 次
2 回答
1
你不应该弄乱供应商目录。有充分的理由将它们放在一起vendors
。如果您确实需要从另一个路径获得某些文件,请使用符号链接。
有关此主题的更多信息,请阅读Igor Wiedler 撰写的有关Composer Vendor Directory的权威博客文章。
或者,您可以使用 phing 将内容复制到其他地方(和/或删除)。
于 2013-09-23T11:29:08.897 回答
0
使用 composer 安装软件时,会安装所有存储库。如果要删除未使用的文件夹,可以使用 composer 的特定功能。您可以通过这种方式捕获一些事件,例如 post-install-cmd 或 post-update-cmd:
{
"scripts": {
"post-install-cmd": "Sensorario\\Communityii\\ComposerCommands::postInstall",
"post-update-cmd": "Sensorario\\Communityii\\ComposerCommands::postUpdate"
}
}
在项目的根文件夹中,您有 composer.json,您还需要在PSR-0标准中添加一个文件: - composer.json - src/Sensorario/Communityii/ComposerCommands.php
这个文件可以是这样的:
命名空间 Sensorario\Communityii;
class ComposerCommands
{
public static function postUpdate()
{
// remove unused folders
shell_exec('rm vendor/yiisoft/yii/demos/ ... ');
}
}
此代码将在之后运行
$ composer update
于 2013-09-24T05:17:05.563 回答