推送到 Heroku 应用失败(安装后 cmd 事件返回并显示错误) - 作曲家问题


Push to Heroku app fails (post-install-cmd event returned with an error) - Composer issue?

我去年做过一个项目,一切都很顺利。从 2015 年 11 月到今天,我就没有碰过它。我做了一些更改,当我尝试推送到 Heroku 时出现以下错误。我已经用作曲家尝试了很多东西(作曲家更新,作曲家安装,删除composer.lock和运行作曲家安装的供应商文件夹),但似乎没有任何帮助。

Counting objects: 11, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 494 bytes | 0 bytes/s, done.
Total 6 (delta 4), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Deleting 1 files matching .slugignore patterns.
remote: -----> Using set buildpack heroku/php
remote: -----> PHP app detected
remote: -----> Bootstrapping...
remote: -----> Installing system packages...
remote:        NOTICE: No runtime required in composer.json; requirements
remote:        from dependencies in composer.lock will be used for selection
remote:        - php (7.0.3)
remote:        - Apache (2.4.16)
remote:        - Nginx (1.8.0)
remote: -----> Enabling PHP extensions...
remote:        - ext-zend-opcache (automatic)
remote: -----> Installing dependencies...
remote:        Composer version 1.0.0-alpha11 2015-11-14 16:21:07
remote:        Loading composer repositories with package information
remote:        Installing dependencies from lock file
remote:          - Installing symfony/finder (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing symfony/filesystem (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing symfony/console (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing nikic/php-parser (v0.9.5)
remote:            Loading from cache
remote:
remote:          - Installing classpreloader/classpreloader (1.0.2)
remote:            Loading from cache
remote:
remote:          - Installing d11wtq/boris (v1.0.8)
remote:            Loading from cache
remote:
remote:          - Installing doctrine/lexer (v1.0)
remote:            Loading from cache
remote:
remote:          - Installing doctrine/annotations (v1.2.0)
remote:            Loading from cache
remote:
remote:          - Installing doctrine/cache (v1.3.0)
remote:            Loading from cache
remote:
remote:          - Installing doctrine/collections (v1.2)
remote:            Loading from cache
remote:
remote:          - Installing doctrine/inflector (v1.0)
remote:            Loading from cache
remote:
remote:          - Installing doctrine/common (v2.4.2)
remote:            Loading from cache
remote:
remote:          - Installing doctrine/dbal (v2.4.2)
remote:            Loading from cache
remote:
remote:          - Installing facebook/php-sdk-v4 (4.0.9)
remote:            Loading from cache
remote:
remote:          - Installing filp/whoops (1.1.2)
remote:            Loading from cache
remote:
remote:          - Installing fzaninotto/faker (v1.4.0)
remote:            Loading from cache
remote:
remote:          - Installing guzzlehttp/streams (1.4.0)
remote:            Loading from cache
remote:
remote:          - Installing guzzlehttp/guzzle (4.1.4)
remote:            Loading from cache
remote:
remote:          - Installing ircmaxell/password-compat (1.0.3)
remote:            Loading from cache
remote:
remote:          - Installing mobiledetect/mobiledetectlib (2.8.3)
remote:            Loading from cache
remote:
remote:          - Installing symfony/translation (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing symfony/security-core (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing symfony/routing (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing symfony/process (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing symfony/http-foundation (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing symfony/event-dispatcher (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing symfony/debug (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing psr/log (1.0.0)
remote:            Loading from cache
remote:
remote:          - Installing symfony/http-kernel (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing symfony/dom-crawler (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing symfony/css-selector (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing symfony/browser-kit (v2.5.2)
remote:            Loading from cache
remote:
remote:          - Installing swiftmailer/swiftmailer (v5.2.1)
remote:            Loading from cache
remote:
remote:          - Installing stack/builder (v1.0.2)
remote:            Loading from cache
remote:
remote:          - Installing predis/predis (v0.8.6)
remote:            Loading from cache
remote:
remote:          - Installing phpseclib/phpseclib (0.3.7)
remote:            Loading from cache
remote:
remote:          - Installing patchwork/utf8 (v1.1.24)
remote:            Loading from cache
remote:
remote:          - Installing nesbot/carbon (1.10.0)
remote:            Loading from cache
remote:
remote:          - Installing monolog/monolog (1.10.0)
remote:            Loading from cache
remote:
remote:          - Installing jeremeamia/superclosure (1.0.1)
remote:            Loading from cache
remote:
remote:          - Installing laravel/framework (v4.2.7)
remote:            Loading from cache
remote:
remote:          - Installing jenssegers/agent (v2.1.1)
remote:            Loading from cache
remote:
remote:          - Installing prologue/support (v1.0.1)
remote:            Loading from cache
remote:
remote:          - Installing prologue/alerts (dev-master 961d965)
remote:            Loading from cache
remote:
remote:          - Installing way/generators (dev-master 37e65c4)
remote:            Loading from cache
remote:
remote:        Generating optimized autoload files
remote:        > php artisan clear-compiled
remote:        Mcrypt PHP extension required.
remote:        Script php artisan clear-compiled handling the post-install-cmd e
vent returned with an error
remote:
remote:
remote:
remote:          [RuntimeException]
remote:          Error Output:
remote:
remote:
remote:
remote:        install [--prefer-source] [--prefer-dist] [--dry-run] [--dev] [--
no-dev] [--no-plugins] [--no-custom-installers] [--no-autoloader] [--no-scripts]
 [--no-progress] [-v|vv|vvv|--verbose] [-o|--optimize-autoloader] [-a|--classmap
-authoritative] [--ignore-platform-reqs] [--] [<packages>]...
remote:
remote:
remote:
remote:  !     Push rejected, failed to compile PHP app

当我运行作曲家更新时,这是输出:

Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.
  Problem 1
    - Conclusion: don't install laravel/framework v4.2.19
    - Conclusion: don't install laravel/framework v4.2.18
    - Conclusion: don't install laravel/framework v4.2.17
    - Conclusion: don't install laravel/framework v4.2.16
    - Conclusion: don't install laravel/framework v4.2.15
    - Conclusion: don't install laravel/framework v4.2.14
    - Conclusion: don't install laravel/framework v4.2.13
    - Conclusion: don't install laravel/framework v4.2.12
    - Conclusion: don't install laravel/framework v4.2.11
    - Conclusion: don't install laravel/framework v4.2.10
    - Conclusion: don't install laravel/framework v4.2.9
    - Conclusion: don't install laravel/framework v4.2.8
    - Conclusion: don't install laravel/framework v4.2.7
    - Conclusion: don't install laravel/framework v4.2.6
    - Conclusion: don't install laravel/framework v4.2.5
    - Conclusion: don't install laravel/framework v4.2.4
    - Conclusion: don't install laravel/framework v4.2.3
    - Installation request for way/generators dev-master -> satisfiable by way/g
enerators[dev-master].
    - Conclusion: don't install laravel/framework v4.2.2
    - Conclusion: don't install laravel/framework v4.2.1
    - way/generators dev-master requires illuminate/support ~5.0 -> satisfiable
by illuminate/support[v5.0.0, v5.0.22, v5.0.25, v5.0.26, v5.0.28, v5.0.33, v5.0.
4, v5.1.1, v5.1.13, v5.1.16, v5.1.2, v5.1.20, v5.1.22, v5.1.25, v5.1.28, v5.1.30
, v5.1.31, v5.1.6, v5.1.8, v5.2.0, v5.2.19, v5.2.21, v5.2.6, v5.2.7].
    - don't install illuminate/support v5.0.0|don't install laravel/framework v4
.2.0
    - don't install illuminate/support v5.0.22|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.0.25|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.0.26|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.0.28|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.0.33|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.0.4|don't install laravel/framework v4
.2.0
    - don't install illuminate/support v5.1.1|don't install laravel/framework v4
.2.0
    - don't install illuminate/support v5.1.13|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.1.16|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.1.2|don't install laravel/framework v4
.2.0
    - don't install illuminate/support v5.1.20|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.1.22|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.1.25|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.1.28|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.1.30|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.1.31|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.1.6|don't install laravel/framework v4
.2.0
    - don't install illuminate/support v5.1.8|don't install laravel/framework v4
.2.0
    - don't install illuminate/support v5.2.0|don't install laravel/framework v4
.2.0
    - don't install illuminate/support v5.2.19|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.2.21|don't install laravel/framework v
4.2.0
    - don't install illuminate/support v5.2.6|don't install laravel/framework v4
.2.0
    - don't install illuminate/support v5.2.7|don't install laravel/framework v4
.2.0
    - Installation request for laravel/framework 4.2.* -> satisfiable by laravel
/framework[v4.2.0, v4.2.1, v4.2.10, v4.2.11, v4.2.12, v4.2.13, v4.2.14, v4.2.15,
 v4.2.16, v4.2.17, v4.2.18, v4.2.19, v4.2.2, v4.2.3, v4.2.4, v4.2.5, v4.2.6, v4.
2.7, v4.2.8, v4.2.9].

这是我的作曲家.json:

{
    "name": "laravel/laravel",
    "description": "The Laravel Framework.",
    "keywords": ["framework", "laravel"],
    "license": "MIT",
    "require": {
        "laravel/framework": "4.2.*",
        "prologue/alerts": "dev-master",
        "way/generators": "dev-master",
        "fzaninotto/faker": "v1.4.0",
        "nesbot/Carbon": "*",
        "doctrine/dbal": "2.4.*",
        "guzzlehttp/guzzle": "~4.0",
        "jenssegers/agent": "*",
        "facebook/php-sdk-v4" : "4.0.*"
    },
    "require-dev" : {
        "phpunit/phpunit": "4.1.*"
    },
    "autoload": {
        "classmap": [
            "app/commands",
            "app/controllers",
            "app/models",
            "app/database/migrations",
            "app/database/seeds",
            "app/tests/TestCase.php"
        ]
    },
    "scripts": {
        "post-install-cmd": [
            "php artisan clear-compiled",
            "php artisan optimize"
        ],
        "post-update-cmd": [
            "php artisan clear-compiled",
            "php artisan optimize"
        ],
        "post-create-project-cmd": [
            "php artisan key:generate"
        ]
    },
    "config": {
        "preferred-install": "dist"
    },
    "minimum-stability": "stable"
}

如果我将方式/生成器更改为2.*并将序幕/警报更改为0.3.0我可以运行作曲家更新,但之后仍然无法推送。

有人可以帮忙吗?已经卡了2天了。

提前感谢!

这是错误的原因:

需要 Mcrypt PHP 扩展名。

启用该扩展以避免错误。