Composer如何指定安装目录

时间:2013-10-02 13:42:31

标签: installation composer-php

您好我最近将Laravel作为PHP框架下载,我已经安装了作曲家并且已经开始工作了,我已经根据Laravel网站创建了我的项目

composer create-project laravel/laravel --prefer-dist

但是,当我使用上面的代码时,这会将我的项目安装在c:\ users \ guti目录中,但是我希望它安装在c:\ xampp \ htdocs中。

我在stackoverflow上看到了另一个问题,它讨论了修改composer.json文件,但我不确定这是否是我应该采取的路径,因为我已经完成了对此文件和此文件的计算机搜索作为laravel框架的一部分存在,所以修改这个文件是否有意义?

任何作曲家专家都指出我正确的方向?

5 个答案:

答案 0 :(得分:47)

composer create-project laravel/laravel .

安装在当前目录中=)

答案 1 :(得分:37)

您应指定要在其中创建项目的目标目录,在命令提示符下键入cd C:\xampp\htdocs,然后按Enter键。之后,在命令提示符下键入以下代码,然后按Enter键

composer create-project laravel/laravel my-laravel-project

此处my-laravel-project将是您的项目文件夹。 composer.json文件用于在通过packagist安装软件包期间设置一些配置(用于依赖关系管理)。 请访问getcomposer.org了解详情。

答案 2 :(得分:5)

每当

composer create-project laravel/laravel .

无论出于何种原因,我都无法正常工作,我只是

 laravel new temp 

然后将新应用程序的内容移动到我想要的文件夹中; )

答案 3 :(得分:2)

TL; DR

  1. composer create-project --prefer-dist laravel/laravel directory-name
  2. 根据需要将文件移动到首选文件夹(例如,移至../)

为什么laravel new /.

  1. laravel new project-name在不同的系统上并不总是能正常工作,因此您需要多次编辑PATH变量才能将laravel命令添加到cli(至少在OSX上不像在Ubuntu上那样容易)。
  2. composer create-project --prefer-dist .可能由于目录不为空而无法工作(例如,在JetBrains IDE的目录中,该目录将创建文件夹.idea /,该文件夹仅在“项目文件”上不会显示在IDE的“项目”视图中)。异常消息看起来像

[InvalidArgumentException]
Project directory ./ is not empty.

因此,如果您知道自己在做什么,就可以按照自己的意愿做,特别是如果您希望尽可能少地遇到问题,请从此答案的最顶部开始执行步骤。

P.S。我说的英语不如我想做的好,所以任何人都可以随时纠正我。

答案 4 :(得分:1)

需要自己执行此操作。在我想要安装的目录中,我做了:

public rowDataBound(args): void {
    if (args.data['type'] == 'RM' && args.data['rmDetailId'] == this.justNowUpdatedId ||
      (args.data['type'] == 'CM' || args.data['type'] == 'DP' || args.data['type'] == 'CMC' || args.data['type'] == 'DPC') && args.data['id'] == this.justNowUpdatedId) {
      this.selectedIndexes.push(parseInt(args.row.getAttribute('aria-rowindex')));
    }
  }

  public dataBound(args): void {
    if (this.selectedIndexes.length) {
      this.deliveryItemsGrid.selectRows(this.selectedIndexes);
      this.selectedIndexes = [];
    }
  }

到目前为止,它似乎运行良好。