Laravel/Lumen 优化包 - 注解注入kernel自动配置

背景

  1. 因大量的kernel立commands注册和调度配置信息,不同时段的多人员开发,造成git冲突
  2. 注册和调度信息过多,造成维护困难

安装

composer require qklin/laravel-kernel-plus

config/app.php

'providers' => [
    ...
    Qklin\Kernel\Plus\KernelPlusProvider::class,
]

说明

# 会加载注册所有的comand命令脚本,并自动加入schedule队列, 无需手动个添加
php artisan schedule:run

# 自动注册command,并执行
php artisan c:cmd:core:test

注解说明

command::handle()

// * @command true                         //注册command
// * @commandParams param1=foo&--option=1  //本参数可省略
// * @schedule true                        //加入schedule 
// * @runTime everyMinute                  //无参数的所有方法都支持
// * @runTime cron|* * * * *               // 目前只支持cron带参数,方法和参数[|]分隔
// * @withoutOverlapping true
// * @runInBackground true
// * @appendOutputTo test/log              //记录日志,位置:storage目录
// * @deprecated

env

默认的env配置

KERNEL_PLUS_ORIGIN_PREFIX=c
KERNEL_PLUS_MODULE_PREFIX=cm
KERNEL_PLUS_MODULE_DIR=Biz
KERNEL_PLUS_COMMANDS_DIR=cmd
KERNEL_DOCMENT_CMD=command
KERNEL_DOCMENT_CMD_PARAM=commandParams
KERNEL_DOCMENT_SCHEDULE=schedule
KERNEL_DOCMENT_RUN_TIME=runTime
KERNEL_DOCMENT_RUN)BACKGROUND=runInBackground
KERNEL_DOCMENT_LOG=appendOutputTo
KERNEL_DOCMENT_OVER_LAPPING=withoutOverlapping
KERNEL_DOCMENT_DEPRACATED=deprecated

demo

info("test finish");
    }
}

你可能感兴趣的:(laravel,lumen,优化,composer,linux-kernel)