18

我正在 zf2 中创建我的第一个应用程序。我关注了 Zend 官方网站zf2 Skeleton Application。我已经从 github 下载了骨架应用程序,如给定链接中所示。当我将其解压缩并将其放入我的文件夹并运行它时,它会显示此致命错误

 Fatal error: Uncaught exception 'RuntimeException' with message 'Unable to load ZF2. 
 Run  `php composer.phar install` or define a ZF2_PATH environment variable.' in 
 D:\projects\zf2\zf2_app\init_autoloader.php:50 Stack trace: #0 D:\projects\zf2\zf2_app
 \public\index.php(9): require() #1 {main} thrown in D:\projects\zf2\zf2_app
 \init_autoloader.php on line 50

我不知道如何解决这个问题??

那这个呢?

To install Zend Framework 2 into our application we simply type:
  php composer.phar self-update
  php composer.phar install

在哪里输入这些命令?帮助我完成我的第一个 ZF2 应用程序

4

7 回答 7

18

您应该打开一个 cmd 窗口并将目录更改为您的项目。然后,您需要键入以下内容:

php composer.phar install

这将安装 Zend Skeleton 应用程序的所有库依赖项 - 在本例中为 ZF2。

于 2012-10-17T15:39:27.620 回答
5

除了 Rob Allens 的回答之外,到目前为止,我还从对命令行经验较少的 Windows 用户那里得到了很好的回应。

您可能会发现我的博客也很有帮助:Zend Framework 2 installation on Xampp for Windows

于 2012-10-18T06:51:59.973 回答
3

您可能需要执行以下步骤:

  1. 从 Github 下载 ZF2 骨架应用程序。

  2. 更改要安装的目录,然后解压缩骨架应用程序。

  3. 将目录更改为“ZendSkeletonApplication-master”,然后运行以下命令:

    php composer.phar 自我更新
    php composer.phar 安装

于 2013-02-07T21:57:47.863 回答
2

好像你还没有下载 zf2 :) 从这里下载它http://framework.zend.com/downloads/latest#ZF2

将框架提取到供应商/ZF2。你完成了:) 现在浏览到你的应用程序,希望它显示无异常。

于 2012-10-17T15:37:01.173 回答
2

1.从你的 apache 启用 LoadModule rewrite_module modules/mod_rewrite.so

2.从你的 php.ini 启用 extension=php_openssl.dll

3.从http://getcomposer.org/doc/00-intro.md#autoloading安装 Composer 。Linux 和 windows 都有说明。

4.从 github 下载骨架项目(https://github.com/zendframework/ZendSkeletonApplication并单击“Zip”按钮)到您的 htdocs。

5.进入刚刚下载好的骨架项目的目录。

6.运行 php composer.phar install。这将下载所有依赖项。

7.转到http://framework.zend.com/manual/2.2/en/user-guide/skeleton-application.html并相应地创建一个虚拟主机。

<VirtualHost *:80>
  ServerName zf2-tutorial.localhost
DocumentRoot /path/to/zf2-tutorial/public
SetEnv APPLICATION_ENV "development"
<Directory /path/to/zf2-tutorial/public>
    DirectoryIndex index.php
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

8.转到 c:\windows\system32\drivers\etc\hosts (Windows) 或 /etc/hosts(Linux) 并添加以下行: 127.0.0.1 zf2-tutorial.localhost localhost

9.转到http://zf2-tutorial.localhost/,您应该会看到欢迎页面。

于 2013-10-21T01:03:45.037 回答
1

让@Rob Allen 变得更容易怎么样?回答时,让其他读者可以节省24小时到1分钟!!我试图让您的回答更容易,如下所示:

1) httpd.conf
<VirtualHost *:80>
 ServerName site
 ServerAlias site
 DocumentRoot /var/www/html/s/public
 <Directory /var/www/html/s/public>
    #AddDefaultCharset utf-8
    DirectoryIndex index.php
    AllowOverride FileInfo
    Order allow,deny
    Allow from all
 </Directory>
</VirtualHost>

2) i did git clone git repo
$ ls
composer.json  composer.lock  composer.phar  config  data  db_bck  init_autoloader.php  LICENSE.txt  module  nbproject  public  README.md  vendor

3) I run and i get same error

4) I did now this

$ php composer.phar install
Loading composer repositories with package information
Installing dependencies from lock file
  - Installing zendframework/zendframework (2.0.6)
    Downloading: 100%         

    Skipped installation of bin/classmap_generator.php for package zendframework/zendframework: name conflicts with an existing file
zendframework/zendframework suggests installing doctrine/common (Doctrine\Common >=2.1 for annotation features)
zendframework/zendframework suggests installing ext-intl (ext/intl for i18n features)
zendframework/zendframework suggests installing pecl-weakref (Implementation of weak references for Zend\Stdlib\CallbackHandler)
zendframework/zendframework suggests installing zendframework/zendpdf (ZendPdf for creating PDF representations of barcodes)
zendframework/zendframework suggests installing zendframework/zendservice-recaptcha (ZendService\ReCaptcha for rendering ReCaptchas in Zend\Captcha and/or Zend\Form)
Generating autoload files


5) It works now
于 2013-02-03T18:20:12.283 回答
1

因为您已经下载了 GIT 文件,所以下面的命令适用于 windows:

1) 转到相应的文件夹 2) 运行命令 -> composer update 3) 这应该让您安装和选择可选模块 4) 最后 -> php -S 0.0.0.0:8080 -t .\public .\public\index .php

有了这个,您应该能够访问http://localhost:8080/的索引页面

于 2016-10-05T20:32:14.780 回答