【问题标题】:Composer private package issueComposer 私有包问题
【发布时间】:2017-05-27 03:34:34
【问题描述】:

我在 packagist.com 中创建了一个私人作曲家包,但是当我使用 作曲家需要命令来获取它。我的包位于根目录下的供应商文件夹下。

但我希望它位于 app/code 文件夹中。 composer.json 有没有可以设置app/code的参数,所以它会在app/code/下。

【问题讨论】:

    标签: magento packagist composer-php


    【解决方案1】:

    是的,有。根据作曲家documentation 的说法,如果您的项目使用PSR-4 规范来加载类,那么将下面的sn-p 添加到composer.json 文件中就可以了。

    注意:您需要将 ProjectNameSpace 更改为项目的基本命名空间。

    ...
      "autoload": {
        "psr-4": {
          "ProjectNameSpace\\": "app/code"
        }
      },
    ...
    

    【讨论】:

    • 我试过了,但它仍然将包放在供应商目录中。
    【解决方案2】:

    理论上。您不能作曲家总是将代码放在供应商目录中。代码是外部的,因此只能由作曲家更新。它不能在 app/code 中,因为只有您为项目修改的代码才应该在 app/code 中。

    如果你想创建一个 Magento 项目,你应该在版本控制工具中有闲置文件。

    • 应用程序/*
    • composer.json
    • composer.lock
    • .htaccess
    • index.php

    其他文件将由作曲家处理。

    但如果您确实需要这样做,但我认为没有任何理由这样做,那么您可以使用更新后和安装后脚本来移动代码。但这是一个非常糟糕的主意。

    【讨论】:

      猜你喜欢
      • 2014-05-19
      • 2018-02-20
      • 2022-07-28
      • 1970-01-01
      • 2021-07-13
      • 2018-12-23
      • 1970-01-01
      • 1970-01-01
      • 2013-05-19
      相关资源
      最近更新 更多