Php 作曲家更新拉威尔
一位开发人员向我发送了他的项目,但当我尝试更新或安装我的供应商时,一切都很好,直到最后,它会输出下面的消息Php 作曲家更新拉威尔,php,laravel,composer-php,Php,Laravel,Composer Php,一位开发人员向我发送了他的项目,但当我尝试更新或安装我的供应商时,一切都很好,直到最后,它会输出下面的消息 C:\xampp\htdocs\BigWaveMedia\davinkit>php artisan migrate { "error": { "type": "Exception", "message": "expected color value: failed at `.clearfix;` C:\\xampp\\htdocs\\BigWa
C:\xampp\htdocs\BigWaveMedia\davinkit>php artisan migrate
{
"error": {
"type": "Exception",
"message": "expected color value: failed at `.clearfix;` C:\\xampp\\htdocs\\BigWaveMedia\\davinkit\\app\\start\/..\/..\/public\/less\/style.less on line 102",
"file": "C:\\xampp\\htdocs\\davinkit\\vendor\\leafo\\lessphp\\lessc.inc.php",
"line": 3258
}
}
C:\xampp\htdocs\BigWaveMedia\davinkit>
有什么想法吗?这是一个完整的日志当您运行
composer update
时,composer
生成一个名为composer.lock
的文件,其中列出了所有软件包和当前安装的版本。这允许您以后运行composer install
,它将安装该文件中列出的软件包,重新创建上次使用的环境
从您的日志中可以看出,composer.lock
文件中列出的某些软件包版本不再可用。因此,当您运行composer install
时,它会抱怨并失败。这通常没什么大不了的-只需运行composer update
,它将尝试构建一组一起工作的包,并编写一个新的composer.lock
文件
但是,您遇到了另一个问题。看起来,在您的composer.json
文件中,原始开发人员添加了一些失败的更新前或更新后操作,特别是php artisan migrate
命令。这可以通过运行以下命令来避免:composer更新--无脚本
这将运行composer更新,但将跳过添加到文件中的脚本。您应该能够以这种方式成功运行更新
然而,这并不能长期解决问题。有两个问题:
composer update
时编译资产。从composer.json
文件中删除该步骤据我所知,最佳实践似乎是在开发期间(即,当您对较少的文件进行更改时,最好使用类似的工具)和部署之前根据需要编译资产。以下内容对我适用:
composer update --no-scripts
这是用于编写器更新的命令。请尝试此
编写器自我更新在终端中编写此命令: 作曲家更新 您可以使用:
composer self-update --2
要更新到2.0.8版本(最新稳定版本)也显示您的
composer.json
。它正在尝试编译更少的。。。修复style.less
文件第102行的color错误?@DavidBarker我认为你是对的,但是为什么它在迁移过程中会这样做呢?另一个开发人员在做什么?我甚至不确定我是否能将它安装到composer?另外,我放弃了使用任何一个PHP较少的编译器,因为它们有时不是最新的,并且在编译诸如引导之类的东西时会遇到麻烦。因此,问题可能不在于style.less
文件,而在于compiler.TL;DRcomposer更新--没有脚本+1&谢谢你能解释为什么这是必要的吗?