我为现有的旅游预订系统创建了一个前端API。为了分发它,我想减少我/ vendor目录的大小。它的总大小为26.4 MB。
这些是/ vendor中的最大目录(大小以KB为单位):
14402 ./symfony
4611 ./swiftmailer
3501 ./doctrine
2032 ./twig
844 ./monolog
826 ./silex
105 ./composer
56 ./pimple
39 ./psr
这是我的composer.json文件:http://pastebin.com/mBi5V0PH。我已经删除了不必要的库,但最大的块是./swiftmailer和./symfony并且增加到超过20MB。
如何将大小减小到大约10MB?
答案 0 :(得分:2)
不幸的是,实际上没有一种方法可以优化包含的库以进行分发。我建议的唯一优化是分离您的开发依赖项。假设您使用symfony/browser-kit
和symfony/css-selector
进行测试,可以将其放入require-dev
的{{1}}部分。
composer.json
然后在压缩发行版之前,使用
运行composer{
"require": {
"doctrine/dbal": ">=2.2.0,<2.4.0-dev",
"monolog/monolog": ">=1.0.0",
"php": ">=5.3.2",
"silex/silex": "~1.2",
"swiftmailer/swiftmailer": "5.*",
"symfony/config": "~2.3",
"symfony/console": "~2.3",
"symfony/finder": "~2.3",
"symfony/form": "~2.3",
"symfony/locale": "~2.3",
"symfony/translation": "~2.3",
"symfony/twig-bridge": "~2.3",
"symfony/validator": "~2.3",
"symfony/yaml": "~2.3",
"twig/twig": ">=1.8,<2.0-dev",
"twig/extensions": "*"
},
"require-dev": {
"symfony/browser-kit": "~2.3",
"symfony/css-selector": "~2.3"
}
}