You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过composer.json额外配置缩减Google API PHP Client包体积并仅加载指定服务?

解决Google API PHP Client仅下载指定服务包的问题

你的配置思路是对的,没生效大概率是缓存干扰或细节疏漏,按以下步骤调整即可实现仅保留所需服务包:

  • 清理现有依赖缓存:先删除本地的vendor目录和composer.lock文件,避免旧依赖缓存影响新配置的执行:

    rm -rf vendor composer.lock
    
  • 修正配置细节:确保服务名称为官方准确命名(比如表格服务是Sheets而非Sheet),修正后的composer.json示例如下:

    {
        "require": {
            "google/apiclient": "^2.12.1"
        },
        "scripts": {
            "pre-autoload-dump": "Google\\Task\\Composer::cleanup"
        },
        "extra": {
            "google/apiclient-services": [
                "Drive",
                "Sheets",
                "YouTube"
            ]
        }
    }
    
  • 重新执行安装:运行composer install,观察控制台输出,若出现Running pre-autoload-dump script Google\Task\Composer::cleanup的日志,说明清理脚本已生效。此时查看vendor/google/apiclient-services/src/Google/Service目录,只会保留你指定的服务文件夹。

额外说明:如果使用google/apiclient 3.x版本,官方已改为拆分独立服务包,可直接单独require对应服务(比如指定具体服务版本的google/apiclient-services),无需依赖清理脚本。

内容的提问来源于stack exchange,提问作者Ejaz UL Haq

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 05:40:20