php - composer 在自动加载文件中生成不正确的命名空间
问题描述
我在 composer.json 中有一个 3rd 方库:
some/library:version
命名空间就像:
ns1\ns2\MainClass
一切正常,直到有一天这个库改变了它的命名空间结构。
问题是:当我作曲家更新依赖项时。它(composer)保留旧的 psr4 命名空间设置(autoload_psr4.php)。
我检查了“installed.json”,发现它也加载了不正确的配置。但是在供应商文件夹中,库是正确的。在 composer.lock 包的“require”“require-dev”“autoload”字段的设置没有更新。-- 认为这是断点。
我试过了:
- 清除所有缓存并重新安装所有内容
- 清除供应商文件夹和除 composer.json 之外的所有内容并重新安装
- 切换到库的 dev-master 版本并更改库的 composer.json (这是我的库)
谢谢。
我现在很确定这是由包(远程)设置引起的,我创建了一个新项目并尝试获取最新版本(或 dev-master),但只提取了那个“特殊”(旧)版本。我注意到“特殊”版本和较新版本之间的唯一区别是:
“特殊”:要求:{php:>=5.6} 更新:要求:{php:>=7.0}
PS:该软件包不需要其他任何东西。
我想这可能是我的项目“需要”和这个包的需要更改引起的一些冲突。
解决方案
推荐阅读
- angular - nginx Angular 上的 404 Not Found 错误:8.0.2 路由
- sql - 按在 sqlite3 中的选择查询中计算的分数对行进行排序
- java - 将 STSProfileCredentialsServiceProvider 迁移到 AWS SDK v2
- python - 如何在 Python 中加载 JSON 文件,保留一些转义的 Unicode 字符
- python - 迭代自身的多个条件应用函数
- ios - 如何在回合制循环中实现框架功能 touchDown?
- c - 从 Windows 获取监视器元数据
- php - 单个 eloquent 查询中的不同顺序
- vb6 - VB6 Join on LongArray 在 Windows 更新后给出类型不匹配错误
- javascript - 显示 iframe 的下拉菜单?