热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

如何解决PHPStorm警报类的"多个定义"

如何解决《如何解决PHPStorm警报类的"多个定义"》经验,为你挑选了1个好方法。

我使用PHPStorm并具有以下消息"多个定义" PHPUnit\Framework\TestCase.我不确定,但看起来像PHPStorm使用compose autoload系统.所以我试图找到不必要的类定义所在的目录并排除它们.

我发现我可以使用exclude-from-classmap房产了autoload.所以我添加了以下内容:

"vendor/cloudinary/cloudinary_php/tests/",
"vendor/bin/.phpunit/phpunit-5.7/src/ForwardCompatibility/"

这些是存在不必要的类定义的目录.然后我跑了composer dump-autoload.没有改变.重启PHPStrom - 什么都没有.

这是我的整个自动加载部分:

"autoload": {
        "psr-4": { "": "src/" },
        "classmap": [ "app/AppKernel.php", "app/AppCache.php" ],
        "files": [
            "src/helpers/helpers.php"
        ],
        "exclude-from-classmap": [
            "vendor/cloudinary/cloudinary_php/tests/",
            "vendor/bin/.phpunit/phpunit-5.7/src/ForwardCompatibility/"
        ]
    },

我注意到了相关的问题,但它们不符合我的要求.我知道从composer中排除文件夹的方法.



1> axiac..:

PhpStorm并不太关心你的composer.json*.它在项目的文件中找到了两次定义的类,这就是它警告你的原因.

PHP并没有被两次定义的类所困扰.如果它从一个文件加载类(通过Composer生成的自动加载器),它永远不会读取另一个文件.

检测到重复项并确定要让PhpStorm忽略哪一项后,在项目视图中右键单击其目录,然后从出现的菜单中选择"将目录标记为" - >"排除".


*这不完全正确.默认情况下,PhpStorm配置为在项目的Composer文件中添加它找到的包作为库.但即使在项目中没有Composer文件的情况下,它也会警告类的重复定义.


推荐阅读
  • 环境配置tips
    一、MySQL在Linux下数据库名、表名、列名、别名大小写规则是这样的:  1、数据库名与表名是严格区分大小写的;  2、表的别名是严格区分大小写的& ... [详细]
  • laravel 使用腾讯云 COS5全教程
    laravel使用腾讯云COS5全教程一下载首先第一步肯定是用composer把包安装下来,这里是laravel5.8版本的,所以我用的是cos5 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了未找到类'MaddHatterLaravelFullcalendarServiceProvider'相关的知识,希望对你 ... [详细]
  • 支持composer的php,composer配置
    本文目录一览:1、PHP与composer结合-使用命名空间实现文件自动加载 ... [详细]
  • Composer是PHP的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。下载Composer的可执行文件局部安装要真正获取Composer ... [详细]
  • 一、安装Composer第一步:双击下载好的composer运行程序第二步:选择要安装的盘符第三步:选择php版本。如果你是集成包环境&# ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 本文介绍了前端人员必须知道的三个问题,即前端都做哪些事、前端都需要哪些技术,以及前端的发展阶段。初级阶段包括HTML、CSS、JavaScript和jQuery的基础知识。进阶阶段涵盖了面向对象编程、响应式设计、Ajax、HTML5等新兴技术。高级阶段包括架构基础、模块化开发、预编译和前沿规范等内容。此外,还介绍了一些后端服务,如Node.js。 ... [详细]
  • IOS开发之短信发送与拨打电话的方法详解
    本文详细介绍了在IOS开发中实现短信发送和拨打电话的两种方式,一种是使用系统底层发送,虽然无法自定义短信内容和返回原应用,但是简单方便;另一种是使用第三方框架发送,需要导入MessageUI头文件,并遵守MFMessageComposeViewControllerDelegate协议,可以实现自定义短信内容和返回原应用的功能。 ... [详细]
  • DSP中cmd文件的命令文件组成及其作用
    本文介绍了DSP中cmd文件的命令文件的组成和作用,包括链接器配置文件的存放链接器配置信息、命令文件的组成、MEMORY和SECTIONS两个伪指令的使用、CMD分配ROM和RAM空间的目的以及MEMORY指定芯片的ROM和RAM大小和划分区间的方法。同时强调了根据不同芯片进行修改的必要性,以适应不同芯片的存储用户程序的需求。 ... [详细]
  • php缓存ri,浅析ThinkPHP缓存之快速缓存(F方法)和动态缓存(S方法)(日常整理)
    thinkPHP的F方法只能用于缓存简单数据类型,不支持有效期和缓存对象。S()缓存方法支持有效期,又称动态缓存方法。本文是小编日常整理有关thinkp ... [详细]
  • Nextcloudsnap一键安装包: https:github.comextcloudextcloud-snap建议安装Ubuntu系统,因为官方一键安装包用的是Snap,Cen ... [详细]
  • PHP回顾系列目录PHP基础web请求cookieweb响应session数据库操作加解密Composer创建自己的Composer包发送邮件IO上篇“PHP回顾之IO”提到读取文 ... [详细]
  • php线上的项目是怎么的(2023年最新分享)
    导读:很多朋友问到关于php线上的项目是怎么的的相关问题,本文编程笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!本文目录一览: ... [详细]
  • 在Shopware系统中,有一个主composer.json文件。这管理主要的项目依赖项。除此之外,Shopware插件要求您添加一个compos ... [详细]
author-avatar
是你让我变得冷漠涡
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有