安装Custom basic laravel Package

时间:2017-09-19 12:18:36

标签: laravel-5.3

我已创建自定义基本 Laravel 包,我已将其上传到我的git-hub帐户...

所以我想将这个软件包从git-hub安装到我本地服务器上的新 Laravel 应用程序中....

我正在使用 Laravel 第5.5节 以下是我的Composer.Json代码

{

   "name": "johnsmithamk/message",

    "version" : "0.1",
    "description": "Sample Package in Vendor folder for laravel",
    "type": "project",
    "license": "MIT",
    "authors": [
        {
            "name": "John Smith",
            "email": "test@gmail.com"
        }
    ], 
    "require": { 
        "php": ">=5.5.9",
        "illuminate/support": "5.1.x|5.2.x|5.3.x|5.4.x|5.5.x",
        "johnsmithamk/message": "0.0.1.*@beta",         
    }, 

    "autoload":{
        "psr-4":{
            "test\\message\\": "src"
        }
    },

    "extra": {

        "laravel": {
            "providers": [
                "test\\message\\MessageServiceProvider"
            ]
        }
    },

    "minimum-stability": "dev"
}

我在终端

中使用以下命令安装包

composer require johnsmithamk/message

但在执行上述命令后,我收到以下错误: -

  

[InvalidArgumentException]
  无法在任何版本中找到包johnsmithamk / message   最小稳定性(稳定)。检查包装拼写或最低要求    - 稳定性

     

要求[--dev] [--prefer-source] [--prefer-dist] [ - no-progress]   [--no-sugges] [--no-update] [--no-scripts] [--update-no-dev]   [--update-with-dependencies] [--ignore-platform-reqs]   [--prefer-stable] [--prefer-lowest] [--sort-packages]   [-o | --optimize-autoloader] [-a | --classmap-authoritative]   [--apcu-autoloader] [ - ] [] ......

由于

1 个答案:

答案 0 :(得分:0)

好的,看完你的评论后我相信我知道你的问题是什么。我不认为你明白你需要两个不同的composer.json文件。您已经创建了一个名为“message”的包,您希望它能够在Laravel项目中使用。对于该软件包,您应该使用您在问题中最初发布的代码,除非您删除以下行:

"johnsmithamk/message": "[versionnum]"

你在说什么作曲家是你的包装本身的依赖,这没有任何意义。

那么你需要在Laravel项目的根目录中创建一个新的composer.json。对于composer.json,你必须添加我给你的代码,即:

"minimum-stability": "dev",
"repositories": [
    {
        "type": "git",
        "url": "https://github.com/johnsmithamk/message"
    }
],
"require": {
    "johnsmithamk/message": "dev-master"
}

总而言之,Github上的composer.json是您的“message”包 - 它包含该包的依赖项列表。然后,您希望将该包包含在新包中,这样您就可以添加存储库配置,并需要您的消息包。