解析composer.lock失败;必须是非空且有效的JSON


Heroku ERROR: Failed parsing composer.lock; it must be non-empty and valid JSON

目前得到这个错误,不知道如何修复,我运行作曲家更新,但没有解决它。

$ git push
Fetching repository, done.
Counting objects: 7, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (4/4), 621 bytes | 0 bytes/s, done.
Total 4 (delta 3), reused 0 (delta 0)
-----> PHP app detected
!     ERROR: Failed parsing composer.lock; it must be non-empty and valid JSON.
   Run 'composer update' to have it re-generated or removed by Composer.

!     Push rejected, failed to compile PHP app
To git@heroku.com:foo.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:foo.git'

我刚刚遇到了完全相同的问题。然而,经过双重检查,锁文件是有效的JSON,是一个有效的文件。

解决方案原来是更新composer本身"composer self-update"到最新版本,然后它工作良好