swoft-cloud / swoft

🚀 PHP Microservice Full Coroutine Framework
https://swoft.org
Apache License 2.0
5.58k stars 786 forks source link

开发一个命令行的composer #434

Closed 256mywind closed 6 years ago

256mywind commented 6 years ago
Q A
Bug report? yes/no
Feature request? yes/no
Swoft version x.y.z
Swoole version x.y.z (by php --ri swoole)
PHP version x.y.z (by php -v)
Runtime environment Win10/Mac/CentOS 7/Ubuntu/Docker etc.

Details

Describe what you are trying to achieve and what goes wrong.

// paste output here

Provide minimal script to reproduce the issue

// paste code

在本地开发 放到vendor/swoft下面就可以看到命令 然后 包推到线上以后再安装,这时是没有装到swoft文件下面的 命令行就找不到命令了

huangzhhui commented 6 years ago

所以线上为什么没有?Composer用法和vendor文件夹的用意先了解清楚

256mywind commented 6 years ago

那我直接问一下,你们的commandRoute要做什么注册,还是什么。 composer vender我知道是什么。。

composer可以安装本地的包,也可以安装线上的包 ,我开发的时候是本地开发,是通过本地方式安装。 发布到https://packagist.org 后,当然就是通过composer require线上安装。 命令空间 这些都注册成功了

本地开发的时候 这里面有我自己开发的命令 image

通过线上安装以后 就找不到了。

inhere commented 6 years ago

估计是没有被扫描到

咋不将命令放到 app/Commands/ 里呢

你该保证开发和正式使用时都通过 require 加载包,保证环境一致来开发。

256mywind commented 6 years ago

你的swoft这个命名已经有了在https://packagist.org。 所以只有换一个名字了。。 就没有法放到vendor/sowft下面。我刚刚看了代码是 确实,你们只扫描了 vendor/sowft 这个文件夹下面的。

对了。你们有一个配置console.php这个是怎么配置。

如果放到app/Commands 下面就没有法做到安装就用啊

256mywind commented 6 years ago

@inhere 你该保证开发和正式使用时都通过 require 加载包,保证环境一致来开发。

是一致的开发。在上传的时候换了个包名 name 变了个名字。

开发 也是require 来安装的 可以安装本地的包的嘛

inhere commented 6 years ago

可以配置自定义组件扫描的。 可以使用你自己的包名

在 /config/properties/app 中添加配置:

    'components' => [
        'custom' => [
            "Your\\Package\\Namespace\\"
        ],
    ],
256mywind commented 6 years ago

我先在bootScan 里面加了,可以扫描到了。 然后按你说的在加个自定义组件也可以扫描到了。

256mywind commented 6 years ago

不过你们这个命令行的反应时间真长。。 可以优化一下哇

256mywind commented 6 years ago

开发了一个 https://packagist.org/packages/yangdong/swoft-migration swoft的 数据库迁移包。

huangzhhui commented 6 years ago

可以提交到 swoft-awesome 项目去

256mywind commented 6 years ago

杂提交?

inhere commented 6 years ago

发 PR

你直接修改 https://github.com/swoft-cloud/awesome-swoft 项目的 README 加上你的项目 提交就会自动发起 PR

256mywind commented 6 years ago

是fork出来 修改提交嘛?

inhere commented 6 years ago

你直接改 它会自动fork

256mywind commented 6 years ago

提交了一个Pull 应该是要等同意。