Loading composer repositories with package information

原文链接:Loading composer repositories with package information – 每天进步一点点 (longkui.site)

0.背景

模仿yii2官网使用下面的指令

composer create-project --prefer-dist yiisoft/yii2-app-basic basic

然后项目卡在这个地方,超时之后开始报下面的错误:

curl error 28 while downloading https://asset-packagist.org/p/provider-latest/xxx.json: Timeout was reached

1.原因及解决办法

问题的原因就是composer.json中有一段代码:

"repositories": [
        {
            "type": "composer",
            "url": "https://asset-packagist.org"
        }

    ]

它表示我们要去https://asset-packagist.org 下载数据,但是,我们在国内由于一些大家都懂的原因,所以这一步基本过不去,

然后找替代方法。

第一步:

我们停掉程序,打开composer.json文件。找到下面的代码:

 "require": {
        "php": ">=5.6.0",
        "yiisoft/yii2": "~2.0.14",
        "yiisoft/yii2-bootstrap4": "~2.0.0",
        "yiisoft/yii2-swiftmailer": "~2.0.0 || ~2.1.0"
    },

然后,增加两行:

"require": {
        "php": ">=5.6.0",
        "yiisoft/yii2": "~2.0.14",
        "yiisoft/yii2-bootstrap4": "~2.0.0",
        "yiisoft/yii2-swiftmailer": "~2.0.0 || ~2.1.0",
        "bower-asset/bootstrap": "^3.3",
        "npm-asset/jquery": "^2.2"
    },

注:经过实际测试,第一步不会影响项目构建以及运行,但是官方推荐这么做,所以也就照做了。

第二步,第二步比较重要,经过三次测试才确定

一开始我以为是composer源的问题,于是我写了下面这篇文章来记录一下并实际操作了换源的过程:composer太慢,怎么换源 – 每天进步一点点 (longkui.site)

但是,经过多次测试后发现,构建过程中跟源的关系不大(当然,因为墙的原因,还是建议大家换源),问题的根源在于本身composer.json中。

首先,我们按照官方的建议,在composer.json中找到如下代码:

    "repositories": [
        {
            "type": "composer",
            "url": "https://asset-packagist.org"
        }
    ]

按照官方的建议是在下面新增一条数据,从别的地方拉取数据,看了一些文章也是这么说的,第一个仓库找不到数据就从第二个找,于是改成了下面这样

  "repositories": [
        {
            "type": "composer",
            "url": "https://asset-packagist.org"
        },
        {
            "type": "composer",
            "url": "https://asset-packagist.org"
        }
    ]

然后我们cd 到 basic 目录 执行

composer update -vvv

注: -vvv 指令是查看指令执行的详细过程,然后发现它还是卡在去请求https://asset-packagist.org 这个地方,如下图:

还是不行的话,索性直接放弃掉第一个仓库,改下下面这样:

 "repositories": [
        {
            "type": "composer",
            "url": "https://asset-packagist.cn"
        }
    ]

然后执行

composer update -vvv

或者

composer update

就可以正常下载数据了。

 

posted on   longkui  阅读(625)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示