Генерация оптимизированного автозагрузчика автоматически - PullRequest
0 голосов
/ 05 января 2019

Я работаю над простым проектом с использованием PHP и использую автозагрузку PSR-4. Мне просто интересно, есть ли способ запустить composer dump-autoload -o на composer install, чтобы новым пользователям не нужно было вводить composer dump-autoload -o, чтобы избежать ошибки автозагрузки

{
    "name": "project/vendor",
    "license": "MIT",
    "authors": [
        {
            "name": "my name",
            "email": "myemail@gmail.com"
        }
    ],
    "require": {
        "phpunit/phpunit": "^7.5"
    },
    "autoload": {
          "psr-4": {
              "src\\": "src/"
           }
     },
     "scripts": {
        "run-test": ["./vendor/bin/phpunit tests/calculatorTests.php"]
    }
}

1 Ответ

0 голосов
/ 06 января 2019

Вы можете использовать optimize-autoloader в composer.json config:

"config": {
    "optimize-autoloader": true
},

Однако это может быть довольно раздражающим на этапе разработки (когда создание оптимизированного автозагрузчика - просто пустая трата времени и источник проблем), поэтому я бы предпочел создать для этого какой-нибудь сценарий быстрого доступа и рекомендовать пользователям использовать его вместо прямого composer dump-autoload или composer install. См. этот ответ в качестве примера . Тогда вы можете просто использовать

composer install --no-dev -o 

в вашем скрипте.

...