我是laravel的新手,我正在尝试安装 laravelcollective 。我只是关注文档here,我在项目目录中使用它:
composer require "laravelcollective/html":"^5.4.0"
不幸的是,在我按下后立即出现以下错误:
[UnexpectedValueException] 无法解析版本约束:5.4.0:无效的版本字符串“:5.4.0”
我只是不知道如何解决这个问题。我在google上找不到太多东西,这与我在laravel上缺乏经验相结合,让我陷入困境。
有人可以帮忙吗?
答案 0 :(得分:2)
您可以在composer.json
中手动添加,然后使用composer update
。
只需在"laravelcollective/html": "5.4.*",
"laravel/framework":"5.4.*",
即可
像这样:
"require": {
"php": ">=7.0.0",
"fideloper/proxy": "~3.3",
"laravel/framework": "5.4.*",
"laravelcollective/html": "5.4.*", <-- Add this row
"laravel/tinker": "~1.0"
},
答案 1 :(得分:2)
如果您不想更新所有您的依赖项,则不应该在没有任何参数的情况下运行composer update
。
在您的情况下,问题可能是在将参数传递给Composer之前,shell已经解释了^
字符。这可以通过使用单引号而不是双引号来解决:
composer require 'laravelcollective/html:^5.4.0'
当您使用上述其中一条评论中建议的5.4.*
约束时,您在冒号后面添加了一个空格,这会导致Composer将版本约束解释为包名称。正确的命令就是这样:
composer require "laravelcollective/html":"5.4.*"
答案 2 :(得分:2)
就我而言,我使用的是Laravel 5.7,在尝试安装Laravel集合体时一直出现错误。
您可以在不指定任何版本的情况下使用此命令:
import os
print(os.getcwd())
对我有用。 :)
答案 3 :(得分:1)
composer require "laravelcollective/html ^5.4.0"
为我工作!