问题

我正在尝试设置自定义目录结构
对于我的Symfony项目中的一些共享类.一世
想在我的根目录中创建一个自定义文件夹
项目,我想使用Symfony自动加载
自动注册服务的功能
那个文件夹.

所以我添加了一个自定义服务命名空间
services.yaml文件:

# src ./config/services.yaml
services:
    ...

    TestNamespace\:
    resource: '../TestNamespace/*'

  ...

我在自定义文件夹中添加了一个空类:

# src ./TestNamespace/TestClass.PHP

namespace TestNamespace;

class TestClass
{

}

当我运行应用程序时,我收到以下错误:

(1/2) invalidargumentexception
Expected to find class "TestNamespace\TestClass" in file 
"/path/to/ClassLoadErrorDemo/demo/TestNamespace/TestClass.PHP"
while importing services from resource 
"../TestNamespace/*",but it was not found! Check the
namespace prefix used with the resource.

(2/2) FileLoaderLoadException
Expected to find class "TestNamespace\TestClass" in file 
"/path/to/ClassLoadErrorDemo/demo/TestNamespace/TestClass.PHP" while 
importing services from resource "../TestNamespace/*",but it was not 
found! Check the namespace prefix used with the resource in 
/path/to/ClassLoadErrorDemo/demo/config/services.yaml (which is loaded 
in resource "/path/to/ClassLoadErrorDemo/demo/config/services.yaml").

我仔细检查了路径,命名空间和类
多次命名,一切似乎都很好,我
不明白为什么我仍然得到错误.
./src文件夹中的控制器似乎加载正常.
我在这做错了什么?

重现步骤

我创建了一个演示仓库以隔离问题.

git clone https://github.com/smoelker/SymfonyClassLoadErrorDemo.git
cd SymfonyClassLoadErrorDemo/demo
composer install
mv TestNamespace/TestClass.PHP_ TestNamespace/TestClass.PHP
PHP bin/console server:start
更新您的composer.json自动加载设置
{
    [...]
    "autoload": {
        "psr-4": {
            "TestNamespace\\": "TestNamespace/","": "src/"
        }
    },[...]
}

运行后:composer dump-autoload再试一次.

php – Symfony4加载类自定义文件夹时出错“预计会找到类…但是找不到它”的更多相关文章

  1. Android BLE onCharacteristicRead和onCharacteristicChanged从未调用过

    此代码包含在我的MainActivity方法中.不确定这是否会有所作为.我已经看过并尝试了几种方法,但没有运气.更新:我决定检查onDescriptorWrite方法并记录一些信息.有趣的是,状态返回13,即“写入操作超过属性的最大长度”.我将进一步研究这个问题.解决方法我在这里发现了问题.我假设温度计正在使用标准的BLE服务和特性设置.它不是.他们创造了自己的自定义特征.一旦我切换到那个特性,’改变’方法开始射击.

  2. Mybatis-Plus接口BaseMapper与Services使用详解

    这篇文章主要为大家介绍了Mybatis-Plus接口BaseMapper与Services使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

  3. PHP类(Class)入门教程第1/2页

    对类的摸索~~俺用了半年时间才大概理解类的作用和实现。主要是没有一篇能让我理解的文章(之前没接触过任何OO的东西)。

  4. AngularJs  Creating Services详解及示例代码

    本文主要介绍AngularJs Creating Services的知识资料,这里整理了详细的资料及简单示例代码,有需要的小伙伴可以参考下

  5. php类自动加载失败的处理方案及实例代码

    在本篇文章里小编给大家整理了一篇关于php类自动加载失败的处理方案及实例代码,有兴趣的朋友们可以学习参考下。

  6. AngularJs Injecting Services Into Controllers详解

    本文主要介绍AngularJs Injecting Services Into Controllers的知识,这里整理了一下相关资料,及示例代码,帮助大家学习和理解,有兴趣的小伙伴可以参考下

  7. 实例化php类时传参的方法分析

    这篇文章主要介绍了实例化php类时传参的方法,结合实例形式分析了实例化php类时传参的相关原理、实现方法与操作注意事项,需要的朋友可以参考下

  8. windows-services – 安装Windows服务的问题

    我在安装Windows服务时遇到问题.我安装和卸载了多次服务(installutil…..installutil/u)没有任何问题,但出现了问题,现在当我尝试安装时,我收到下面列出的错误消息.我检查了计算机管理控制台,服务CIMediator没有出现在服务列表中.如何删除该服务?

  9. 如何模拟$window单元测试AngularJS服务?

    这是我的服务:以下是我在介绍$window服务之前的测试.这些测试工作正常,但是一旦我介绍$window服务,我就无法嘲笑它.我收到错误说:TypeError:’undefined’不是函数我尝试使用$provider和spyOn方法,但没有一个工作.请帮忙.阿伦显然,height()和width()函数不正确.我将它们更改为innerHeight和innerWidth属性.由于我上面的评论没有格式化和可读性,我在这里再次添加它.

  10. 带有变量的PHP模板类?

    谢谢.您当前的策略将起作用,并且非常简单.str_replace()是高效和干净的,您可以简单地循环它以用您的变量内容替换精确的标记匹配.但是,缺点是您必须首先将所有模板加载到字符串中,这可能效率很低.另一种非常相似的方法是,您只需使用extract().Extract将采用一组键/值对,并在本地范围内创建变量.如果在同一范围内包含()模板,那么您的变量就可以运行了.像这样的东西:您的模板可能只是普通的PHP.那么你所要做的就是:

随机推荐

  1. PHP个人网站架设连环讲(一)

    先下一个OmnihttpdProffesinalV2.06,装上就有PHP4beta3可以用了。PHP4给我们带来一个简单的方法,就是使用SESSION(会话)级变量。但是如果不是PHP4又该怎么办?我们可以假设某人在15分钟以内对你的网页的请求都不属于一个新的人次,这样你可以做个计数的过程存在INC里,在每一个页面引用,访客第一次进入时将访问时间送到cookie里。以后每个页面被访问时都检查cookie上次访问时间值。

  2. PHP函数学习之PHP函数点评

    PHP函数使用说明,应用举例,精简点评,希望对您学习php有所帮助

  3. ecshop2.7.3 在php5.4下的各种错误问题处理

    将方法内的函数,分拆为2个部分。这个和gd库没有一点关系,是ecshop程序的问题。会出现这种问题,不外乎就是当前会员的session或者程序对cookie的处理存在漏洞。进过本地测试,includes\modules\integrates\ecshop.php这个整合自身会员的类中没有重写integrate.php中的check_cookie()方法导致,验证cookie时返回的username为空,丢失了登录状态,在ecshop.php中重写了此方法就可以了。把他加到ecshop.php的最后面去就可

  4. NT IIS下用ODBC连接数据库

    $connection=intodbc_connect建立数据库连接,$query_string="查询记录的条件"如:$query_string="select*fromtable"用$cur=intodbc_exec检索数据库,将记录集放入$cur变量中。再用while{$var1=odbc_result;$var2=odbc_result;...}读取odbc_exec()返回的数据集$cur。最后是odbc_close关闭数据库的连接。odbc_result()函数是取当前记录的指定字段值。

  5. PHP使用JpGraph绘制折线图操作示例【附源码下载】

    这篇文章主要介绍了PHP使用JpGraph绘制折线图操作,结合实例形式分析了php使用JpGraph的相关操作技巧与注意事项,并附带源码供读者下载参考,需要的朋友可以参考下

  6. zen_cart实现支付前生成订单的方法

    这篇文章主要介绍了zen_cart实现支付前生成订单的方法,结合实例形式详细分析了zen_cart支付前生成订单的具体步骤与相关实现技巧,需要的朋友可以参考下

  7. Thinkphp5框架实现获取数据库数据到视图的方法

    这篇文章主要介绍了Thinkphp5框架实现获取数据库数据到视图的方法,涉及thinkPHP5数据库配置、读取、模型操作及视图调用相关操作技巧,需要的朋友可以参考下

  8. PHP+jquery+CSS制作头像登录窗(仿QQ登陆)

    本篇文章介绍了PHP结合jQ和CSS制作头像登录窗(仿QQ登陆),实现了类似QQ的登陆界面,很有参考价值,有需要的朋友可以了解一下。

  9. 基于win2003虚拟机中apache服务器的访问

    下面小编就为大家带来一篇基于win2003虚拟机中apache服务器的访问。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  10. Yii2中组件的注册与创建方法

    这篇文章主要介绍了Yii2之组件的注册与创建的实现方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下

返回
顶部