如何创建一个composer的packagist安装包
- 编写逻辑代码
编写一个测试demo丢在src文件夹内:(也可以放在根目录,建议根据文件功能分类放在文件夹中)
<?php
namespace gao922699\Hello; //命名空间遵循psr-4规范
class Hello{
public static function say(){
return 'hello world';
}
}
- 创建composer.json
在根目录运行命令:composer init,创建一个composer.json文件,执行步骤如下:
![](https://img.haomeiwen.com/i28316955/9a0a92d1937d4b3f.png)
编辑生成的json文件,在末尾加上autoload配置,前面是命名空间,后面对应文件存放位置
{
"name": "gao922699/test1",
"description": "gaoqing's composer package test1",
"license": "MIT",
"authors": [
{
"name": "gaoqing",
"email": "672405020@qq.com"
}
],
"minimum-stability": "stable",
"require": {},
"autoload": {
"psr-4": {
"gao922699\\Hello\\": "src/"
}
}
}
- 测试是否可用
在根目录运行:composer install,会生成一个vendor文件。编写测试代码:
<?php
require_once __DIR__ . '/vendor/autoload.php';
use gao922699\Hello\Hello;
echo Hello::say();
然后运行该文件:php test.php,如果输出hello world说明测试通过。
-
上传github
略 -
提交到packagist
注册账号登陆后按右上角的submit按钮,把github的项目地址复制进去,点击check,通过后就可以submit了。
![](https://img.haomeiwen.com/i28316955/e0cfd60f03da06e1.png)
- 安装使用
在项目根目录运行:composer require gao922699/test1 "dev-master"
就可以安装使用了
- 安装包的更新
-
提交更新内容到github
-
设置项目到packagist的同步
教程:https://packagist.org/about#how-to-update-packages
- 运行composer update xxxx/xxx(项目名)更新本地vendor
- 发布稳定版本
github上的release功能,发布对应版本号的release版本
网友评论