为什么我的autoload.php作曲家不起作用?

时间:2013-08-19 11:29:16

标签: php dependencies composer-php respect-validation

我有一个项目,我使用Composer,我导入很多东西......我需要在我的索引(项目的根)中的autoload.php和istead Slim,Mongo,Twig工作得非常好。但是,当我打电话给一类尊重/验证时,它不起作用;如果我只是使用Respect / Validation,则错误是:

Class 'Respect\Validation\Validator' not found in (path of file when i need it).

如果我在这里也要求autoload.php错误是:

**Warning**: require_once(vendor/autoload.php): failed to open stream: No such file or directory in (path of file when i need it)

**Fatal error**: require_once(): Failed opening required 'vendor/autoload.php' (include_path='.;C:\xampp\php\PEAR') in (path of file when i need it)

8 个答案:

答案 0 :(得分:22)

尝试使用php composer dump-autoload。它可以解决这个问题。

答案 1 :(得分:18)

如果您在特定目录中使用文件(file.php),请执行以下操作:

/app/controller/validation

并且您的供应商目录位于项目的基本路径中,您需要包含供应商目录的相对路径:

../../../vendor/autoload.php

答案 2 :(得分:8)

我这样做了。 我一如既往地检查文件和权限,但一切看起来都不错。然后我打开autoload.php看看......哦!我们有__DIR__当然。

我这样做

require '../../vendor.autoload.php';

已更改为

require __DIR__.'../../vendor.autoload.php';

在政治上不正确,但让我感到沮丧的浪费时间。

当然,__DIR__有更好的替代品,比如使用BASE Path等。但这对我有用。

答案 3 :(得分:0)

我和xampp有同样的问题。我安装了composer并使用了:

composer create-project --stability=dev --prefer-dist yiisoft/yii2-app-basic D:\xampp\htdocs\newapp

我的问题现在解决了。

答案 4 :(得分:0)

我遇到了同样的问题,我使用laravel的最新版本解决了它,只需尝试使用此代码来创建项目:

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

这总是使用最后一个版本。

答案 5 :(得分:0)

我从项目Root解决了简单的重新运行作曲家更新问题。 (我的情况是在Magento2上,但错误和路径是一样的)

答案 6 :(得分:0)

在我的情况下,我简单地忘记在cmd中运行命令composer require cboden/ratchet之前更改我的工作目录,这已修复它cd c:\path to project\然后composer require cboden/ratchet

答案 7 :(得分:0)

我解决了这个问题,而没有package com.hardian.sample.aidl; import com.hardian.sample.aidl.TeamMember; interface ITeamManageService { void getTeamCaptian(out TeamMember member); void updateTeamMember(inout TeamMember member, in boolean isLeader); oneway void removeTeamMember(in TeamMember member); } 的任何installupdate,而只是将composer从子类移动到require_once

main page