zhamao-robot / zhamao-framework

协程、高性能、灵活的聊天机器人 & Web 开发框架(炸毛框架)
https://framework.zhamao.xin
Apache License 2.0
158 stars 26 forks source link

使用内置Composer创建psr4插件后, 出现报错: zhamao-v3/plugins/xxx 不存在入口文件,也没有自动加载文件和内建Composer,跳过加载 #302

Closed FishZe closed 1 year ago

FishZe commented 1 year ago

受影响版本

3.0.1

描述

环境:

3.0.0 or 3.0.1
php 8.0 or 8.1 (均从https://dl.zhamao.xin/php-bin/down.php下载的静态内置版本)
Ubuntu 20.04.5 LTS (虚拟机: VMware-16)
系统内无其他任何composer和php环境

创建插件:

root@fishze:/.../zhamao-v3# ./zhamao plugin:make
* Framework started with built-in php.
请输入插件名称:test_plugin
请输入要生成的插件结构类型
  [file] file 类型为单文件,方便写简单功能
  [psr4] psr4 类型为目录,按照 psr-4 结构生成,同时将生成 composer.json 用来支持自动加载
 > psr4
请输入插件命名空间:TestPlugin
sh: 1: composer: not found
已生成插件:test_plugin
目录位置:/.../zhamao-v3/plugins/test_plugin

其中有一条composer: not found的报错信息

开启框架:

./zhamao server --log-level=debug

出现报错:

[2023-02-12 10:10:44] [NOTI] [#0] 插件 /.../zhamao-v3/plugins/test_plugin 不存在入口文件,也没有自动加载文件和内建 Composer,跳过加载

完整Log:

root@fishze:/.../zhamao-v3# ./zhamao server --log-level=debug
* Framework started with built-in php.
[2023-02-12 10:10:44] [DEBU] [MST] 已开启正向 WebSocket
[2023-02-12 10:10:44] [DEBU] [MST] Starting framework with properties: {"working_dir":"/.../zhamao-v3","environment":"development","driver":"workerman","log_level":"debug","version":"3.0.1","php_version":"8.1.10","master_pid":55266,"process_mode":"MST1#1","listen_0":"websocket://0.0.0.0:20001","listen_1":"http://0.0.0.0:20002"}
===============================================================================
 工作目录: /.../zhamao-v3
 环境类型: development                 |  驱动类型: workerman
 日志级别: debug                       |  框架版本: 3.0.1
 PHP 版本: 8.1.10                      |  主进程 PID: 55266
 进程模型: MST1#1                      |  监听端口1: websocket://0.0.0.0:20001
 监听端口2: http://0.0.0.0:20002
===============================================================================
 ________________________________________ 
/ Your robot doesn't want others to edit \
\ its code!                              /
 ---------------------------------------- 
        \   ^__^
         \  (oo)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

[2023-02-12 10:10:44] [DEBU] [MST] 启动 Workerman 下的 Worker 们
[2023-02-12 10:10:44] [DEBU] [MST] 接着初始化计时器
[2023-02-12 10:10:44] [DEBU] [MST] 重置输入输出
[2023-02-12 10:10:44] [DEBU] [MST] 监听Worker进程ing
[2023-02-12 10:10:44] [DEBU] [#0] Loading user sources
[2023-02-12 10:10:44] [DEBU] [#0] Adding plugin: onebot12(type:0)
[2023-02-12 10:10:44] [DEBU] [#0] Adding plugin: onebot12-ban-other-ws(type:0)
[2023-02-12 10:10:44] [DEBU] [#0] Adding plugin: command-manual(type:0)
[2023-02-12 10:10:44] [DEBU] [#0] 扫描/.../zhamao-v3/plugins
[2023-02-12 10:10:44] [NOTI] [#0] 插件 /.../zhamao-v3/plugins/test_plugin 不存在入口文件,也没有自动加载文件和内建 Composer,跳过加载
[2023-02-12 10:10:44] [DEBU] [#0] 解析注解完毕!
[2023-02-12 10:10:44] [DEBU] [#0] 声明注解分发器 ZM\Annotation\Framework\Init
[2023-02-12 10:10:44] [DEBU] [#0] 注解调用器设置事件ruleFunc: ZM\Annotation\Framework\Init
[2023-02-12 10:10:44] [DEBU] [#0] 开始分发注解 ZM\Annotation\Framework\Init
[2023-02-12 10:10:44] [DEBU] [#0] Worker process used 6.884 MB
[2023-02-12 10:10:44] [DEBU] [#0] 在 Worker 中初始化 HTTP 服务器,端口:20002
[2023-02-12 10:10:44] [DEBU] [#0] Worker 进程 #0 已启动
[2023-02-12 10:10:44] [DEBU] [#0] 声明注解分发器 ZM\Annotation\Framework\BindEvent
[2023-02-12 10:10:44] [DEBU] [#0] 注解调用器设置事件ruleFunc: ZM\Annotation\Framework\BindEvent
[2023-02-12 10:10:44] [DEBU] [#0] 开始分发注解 ZM\Annotation\Framework\BindEvent

复现步骤

  1. 内置Composer
  2. 执行./zhamao plugin:make创建插件
  3. 执行./zhamao server启动框架

解决方案

No response

附加信息

No response