问题:我想要探索laravel 5,并且在安装时失败了。我使用本指南:http://laravel.com/docs/5.0并需要有人帮我理解说明。
背景和我尝试过的内容
我正在运行Mac OSX 10.10.2(Yosemite)和MAMP。
到目前为止,我已使用终端将Composer下载到我的主文件夹。那里只有一个composer.phar文件。
当我跑步时:
composer global require "laravel/installer=~1.1"
我收到消息:
Changed current directory to /Users/MYUSERNAME/.composer
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Nothing to install or update
Generating autoload files
我认为这是可以的,因为当我在终端中运行以下内容时,我会获得作曲家徽标和选项列表
~ MYUSERNAME$ composer
我不能100%确定以下含义,来自Laravel文档:
"Make sure to place the ~/.composer/vendor/bin directory in your PATH so the
laravel executable can be located by your system."
因为我无法弄清楚,以下步骤会抛出错误,例如:
-bash: laravel: command not found
我已经浏览了几个论坛,并且它建议我需要更新我的PHP.ini文件 - 这似乎与Composer安装有关,而不是特别是Laravel。因为作曲家正在工作,这似乎是一个死胡同。
理想情况下,我想将Laravel 5安装到目录
HomeFolder/sites/test
因为Composer.phar在我的主文件夹中,我认为命令应该是:
php composer laravel new sites/test
或只是
composer laravel new sites/test
如前所述,它只是(正确地)抛出错误。
问题: 如果有人可以帮助解决我的总用户错误,请解释一下"确保将〜/ .composer / vendor / bin目录放在PATH中,以便系统可以找到laravel可执行文件。"对n00b意味着,真的很感激。
非常感谢!
答案 0 :(得分:19)
Laravel是一个PHP框架(使编写PHP应用程序变得简单)
Composer是一个PHP包和依赖项管理器。 (使安装和更新第三方代码库变得容易)
运行时
$ composer global require "laravel/installer=~1.1"
您正在使用composer将laravel/installer=~1.1
包安装到composer的“global”项目文件夹中(通常为~/.composer
)。这是安装名为laravel
的命令行程序。
名为laravel
的命令行程序是用于安装PHP框架(也称为Laravel)的shell脚本。
您的“Unix路径”是命令行脚本将搜索可执行文件的文件夹列表。通常有/usr/bin
,/usr/local/bin
等文件夹。这就是为什么当你运行ls
时,你实际上正在运行/usr/bin/ls
- shell知道检查每个文件夹在一个位置的路径。您可以通过键入
$ echo $PATH
所以,问题是作曲家将laravel
命令行程序安装到不在你的unix路径中的文件夹中。您需要将此文件夹添加到您的unix路径。您可以通过运行以下命令来执行此操作(假设您使用的是bash
,这是OS X的默认shell)
$ PATH=$PATH:~/.composer/vendor/bin
如果运行该程序,则应该能够运行laravel
命令行程序并继续安装。
大多数人将此添加到他们的.bash_profile
或.bashrc
文件中。如果您有兴趣学习如何执行此操作,Unix Stack Exchange会提供很多有用的信息。
答案 1 :(得分:3)
我将C:\ Users \ Leon \ AppData \ Roaming \ Composer \ vendor \ bin而不是〜/ .composer / vendor / bin添加到Path变量中。
以下是有关在Windows 10上更改路径变量的说明: http://windowsitpro.com/systems-management/how-can-i-add-new-folder-my-system-path
答案 2 :(得分:2)
您可以通过编辑PATH
将目录添加到/etc/paths
变量
Here's a tutorial on how to do that
只需添加一行:
~/.composer/vendor/bin
然后laravel new
命令应该可以正常工作
如果一切都失败了,您仍然可以使用composer create-project
命令创建一个新的laravel实例:
composer create-project laravel/laravel sites/test --prefer-dist