加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

composer-php – 当依赖项的composer.json发生变化时,强制compos

发布时间:2020-12-13 16:57:54 所属栏目:PHP教程 来源:网络整理
导读:我开发Symfony软件包的工作流程如下: 安装Symfony 为新包创建一个git repo,在其中放置一个composer.json文件 使用@dev版本在顶级composer.json中要求新包 composer update newpackage =使用git clone下载软件包 在供应商内部的git clone上工作,提交并推送它
我开发Symfony软件包的工作流程如下:

>安装Symfony
>为新包创建一个git repo,在其中放置一个composer.json文件
>使用@dev版本在顶级composer.json中要求新包
> composer update newpackage =>使用git clone下载软件包
>在供应商内部的git clone上工作,提交并推送它

这一切都很好,花花公子,但似乎在一个特定的情况下打破:
如果我改变已经安装的软件包的’autoload’标签,似乎Composer很难将其考虑在内:

>我试过’composer dumpautoload’,它什么也没做
>我不想删除composer.lock文件,因为我不希望其他软件包更新到更新的版本,我只想更改那个软件包的自动加载配置
>我尝试手动删除vendor / composer / installed.json,发生的事情是Composer重新下载了所有供应商并擦除了那时碰巧在那里的任何数据

当我在一个单独的克隆上更改了包的自动加载部分,将更改推送到git并运行’composer update mypackage’时,同样的问题就出现了 – 虽然这可能与packagist没有从github接收到ping有关.

我当然可以手动更改composer.lock和vendor / composer / installed.json文件,但这似乎太过于苛刻.它也没有保证用户第一次下载包会看到它正常工作.

解决方法

dumpautoload使用来自vendor / composer / installed.json的包信息,而不是各个composer.json文件.您也需要在那里更改自动加载信息.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读