使用composer创建yii2项目出错

Error in creating yii2 project with composer

我想在windows10中创建yii2项目。我确实使用了composer create-project命令,但我反对错误。

这是命令提示符中的composer create-project命令:

当然我在 composer global require "fxp/composer-asset-plugin:~1.2.0" 中得到了同样的错误:

安装 composer-setup.exe 后,文件夹 C:/Users/Mohammad/AppData/Roaming/Composer 中没有 composer.json 文件,我从文件夹 C:/Users/Mohammad/AppData/Roaming/Composer 中的一个项目复制了 composer.json 文件.

这是文件夹 C:/Users/Mohammad/AppData/Roaming/Composer 中我的 composer.json:

{
    "name": "yiisoft/yii2-app-advanced",
    "description": "Yii 2 Advanced Project Template",
    "keywords": ["yii2", "framework", "advanced", "project template"],
    "homepage": "http://www.yiiframework.com/",
    "type": "project",
    "license": "BSD-3-Clause",
    "support": {
        "issues": "https://github.com/yiisoft/yii2/issues?state=open",
        "forum": "http://www.yiiframework.com/forum/",
        "wiki": "http://www.yiiframework.com/wiki/",
        "irc": "irc://irc.freenode.net/yii",
        "source": "https://github.com/yiisoft/yii2"
    },
    "minimum-stability": "stable",
    "require": {
        "php": ">=5.4.0",
        "yiisoft/yii2": ">=2.0.6",
        "yiisoft/yii2-bootstrap": "*",
        "yiisoft/yii2-swiftmailer": "*",
        "franciscomaya/yii2-sceditor": "dev-master",
        "kartik-v/yii2-widget-sidenav": "*",
        "mohammad-mahdy/yii2-jdate": "*",
        "2amigos/yii2-ckeditor-widget" : "*",
        "2amigos/yii2-gallery-widget": "~1.0",
        "romka-chev/yii2-swiper" : "*",
        "kartik-v/yii2-widgets": "*",
        "kartik-v/yii2-grid": "@dev",
        "yiisoft/yii2-imagine": "*",
        "omnilight/yii2-shopping-cart": "*",
        "fxp/composer-asset-plugin": "^1.0"
    },
    "require-dev": {
        "yiisoft/yii2-codeception": "*",
        "yiisoft/yii2-debug": "*",
        "yiisoft/yii2-gii": "*",
        "yiisoft/yii2-faker": "*"

    },
    "config": {
        "process-timeout": 1800
    },
    "extra": {
        "asset-installer-paths": {
            "npm-asset-library": "vendor/npm",
            "bower-asset-library": "vendor/bower"
        }
    }
}

请帮我解决一下。

我在 windows 10 系统中使用 composer 安装 yii2 项目没有问题。删除C:\xampp\htdocs内的文件夹basicyii2Basic,按照以下步骤顺利安装。

  1. 检查您的系统是否安装了 composer。您可以通过在命令行中键入 composer 并按回车键来检查这一点。如果 composer 安装成功,您将看到这样的屏幕。

  2. 下一步是安装 Composer Asset Plugin。在此之前,您需要从 C:/Users/Mohammad/AppData/Roaming/Composer 中删除文件夹 composer,如果 there.Then 运行下面的命令来安装它。

composer global require "fxp/composer-asset-plugin:~1.2.0"

  1. 现在导航到您希望维护源代码的目录code.In您的情况是

cd C:\xampp\htdocs

  1. 现在安装基本应用程序模板运行下面的命令。

composer create-project yiisoft/yii2-app-basic basic 2.0.10

在此过程中,您可能会看到如下所示的屏幕,要求您输入令牌。

这是正常的,只需登录到您的 github 帐户并粘贴给定的 url 即可生成 token.The 复制的令牌,然后粘贴到 continue.Sometimes 您的安装可能会要求输入您的 github 用户名和密码,这些都是正常的,只需按照步骤操作即可。

如果问题仍然存在,请检查 composer.json

中的内容

我的composer.json里面的内容如下

{
    "require": {
        "fxp/composer-asset-plugin": "^1.2.0"
    }
}

转到文件夹:

C:/Users/Mohammad/AppData/Roaming/Composer

并编辑 composer.json 文件。

确保没有不必要的条目(如非全局包)。

例如我的全局composer.json看起来像这样:

{
    "require": {
        "fxp/composer-asset-plugin": "1.2.0",
        "codeception/codeception": "^2.2"
    }
}

删除不应该存在的内容后,将其保存并 运行 在控制台中

composer global update

您可能在全局安装了一些软件包,如 Yii 2,这就是您收到此错误的原因。

如果一切顺利,您可以转到项目文件夹并重试安装 Yii 2(在像这样安装本地项目时不要使用 global)。

如果你不想使用插件创建 Yii2 项目,你可以尝试修复 Bower 一个:

Basic Template:

composer create-project --prefer-dist yidas/yii2-app-basic

Advanced Template

composer create-project --prefer-dist yidas/yii2-app-advanced

使用固定的 Bower 供应商,这可以防止您的 Composer 错误。

Refer yidas/yii2-composer-bower-skip