正则表达式模式的 Composer Json 验证错误 ^[a-z0-9]([_.-]?[a-z0-9]+)*/[a-z0-9](([_.]?|-{ 0,2})[a-z0-9]+)*$

Ano*_*555 8 json composer-php

所以我尝试将 composer 和 laravel 安装到 Phpstorm 中,但现在composer.json在 php 中安装文件似乎有问题。PHP版本是7.4.8. 错误代码如下所示。

?  "./composer.json" does not match the expected JSON schema:
?   - name : Does not match the regex pattern ^[a-z0-9]([_.-]?[a-z0-9]+)*/[a-z0-9](([_.]?|-{0,2})[a-z0-9]+)*$
Run Code Online (Sandbox Code Playgroud)

我试图查找它以寻求帮助,但它并没有让我走得足够远,所以我想知道是否有人可以帮助我解决这个问题。

这就是我的 composer.json 的样子。

{
  "name": "vendor_name/PhpProjec",
  "description": "description",
  "minimum-stability": "stable",
  "license": "proprietary",
  "authors": [
    {
      "name": "***",
      "email": "email@example.com"
    }
  ],
  "require": {
    "barryvdh/laravel-ide-helper": "v2.7.0"
  }
Run Code Online (Sandbox Code Playgroud)

小智 8

问题出在“名称”属性上

- name : Does not match the regex pattern ^[a-z0-9]([_.-]?[a-z0-9]+)*/[a-z0-9](([_.]?|-{0,2})[a-z0-9]+)*$
Run Code Online (Sandbox Code Playgroud)

相应地更改“名称”属性“供应商名称/项目名称”

例如: "name": "nismi/my-php-project"

  • 这是正确的答案。 (2认同)

Nic*_*ase 7

您可能在使用 Composer v2 吗?当我使用 Composer v1 在本地环境中使用给定的 JSON 时,它告诉我:

弃用警告:您的包名称 vendor_name/PhpProjec 无效,不应包含大写字符。我们建议改用 vendor_name/php-projec。确保修复此问题,因为 Composer 2.0 会出错。

您提供的错误消息不会出现在我的系统上。如果您在使用其他包名后仍然遇到问题,请分享更多详细信息

  • 将我的项目更改为小写后它就起作用了。谢谢 (2认同)