在作曲家 laravel 上安装依赖项(doctrine/dbal)

Posted

技术标签:

【中文标题】在作曲家 laravel 上安装依赖项(doctrine/dbal)【英文标题】:Install dependency (doctrine/dbal) on composer laravel 【发布时间】:2014-04-20 05:46:29 【问题描述】:

我正在尝试执行迁移以重命名某些列,但出现异常。

当我阅读文档时,我必须将教义/dbal 依赖项添加到我的 composer.json 文件中。我怎么做?哪个是正确的 composer.json 文件。我的申请中有很多。是与文件夹 app、bootstrap、public 和 vendor 处于同一级别的那个。

如果是这样,我该如何添加该依赖项。我需要下载什么吗?

顺便说一句,我使用的是easyphp,而不是wamp!

编辑 1

执行此操作后,控制台会抛出此错误

【问题讨论】:

【参考方案1】:

如果您在运行迁移时遇到错误,请尝试此操作

composer require doctrine/dbal:2.*

【讨论】:

【参考方案2】:

1) 要安装依赖项,请运行此命令

composer require doctrine/dbal

2) 对于 'git' is not Recognized 错误,可能是您没有安装 git,或者环境变量中没有添加 PATH。

Install git for windows。

【讨论】:

这应该是答案。它会自动将正确版本添加到composer.json【参考方案3】:

要添加此依赖项,请打开项目根目录下的 composer.json(与 app、public 等处于同一级别)并在 require 部分中添加如下的学说/dbal 包:

"require": 
    "laravel/framework": "4.1.*",
    "doctrine/dbal": "v2.4.2"
,

保存文件并运行composer update

编辑

您可能使用默认设置安装了 git,但它不在您的 PATH 环境中。

打开 Git Bash(它是与 git 一起安装的 - 你会在你的程序中找到它)并执行 composer update。顺便说一句,windows 命令提示符要好得多。

【讨论】:

composer update 不会导致 composer.json 中的每个包都更新并覆盖 composer.lock 吗?为了安全起见,我更喜欢只使用composer install,因为在盲目调用composer update 之后,我经历了非常糟糕的事情。 @JustAMartin 如果您在 composer.json 中明确设置版本号,那么这些将不会/不应该更新。如果您像上面那样设置它(4.1.*),那么它将更新到 4.1.9 并停止更新。如果您只使用 (2.4.2) 之类的版本号,则它永远不会更新(但如果尚未安装,则会安装)这是理论上的,我从来没有理由担心,因为我使用的是所有内容的最新版本atm,但过去我知道版本之间存在重大变化,因此我可以了解哪里会出现问题。 composer require 是正确的答案,因此您不必摆弄版本号/更新 安装后,当我运行php artisan migrate 时显示错误In AbstractPlatform.php line 423: Unknown database type enum requested, Doctrine\DBAL\Platforms\mysqlPlatform may not support it.

以上是关于在作曲家 laravel 上安装依赖项(doctrine/dbal)的主要内容,如果未能解决你的问题,请参考以下文章

在作曲家中覆盖 PHP 基本依赖项

无效的撰写文件安装依赖项

如何知道 Laravel 包需要哪些作曲家依赖项?

在 forge 上安装 Laravel 5.2 时出错

为什么我的作曲家依赖项没有在docker容器中找到但是本机在我的mac上?

安装 laravel 依赖的问题