RuntimeException 无法扫描“app/AppKernel.php”中的类,该类似乎不是文件也不是文件夹
Posted
技术标签:
【中文标题】RuntimeException 无法扫描“app/AppKernel.php”中的类,该类似乎不是文件也不是文件夹【英文标题】:RuntimeException Could not scan for classes inside "app/AppKernel.php" which does not appear to be a file nor a folder 【发布时间】:2016-11-03 00:53:00 【问题描述】:我想问一下,当我输入这个时,我会从 git bash 得到这个消息
$ composer require slim/slim "^3.0"
然后出现这样的警告。
[RuntimeException]
Could not scan for classes inside "app/AppKernel.php" which does not appear
to be a file nor a folder
你们能帮帮我吗?抱歉英语不好。
谢谢。
【问题讨论】:
试试composer dump-autoload
我们需要您的操作系统版本和作曲家版本......
Windows 8 和我的作曲家是最新版本。
Farkie,我按照你的方法试过了,还是不行
【参考方案1】:
这个答案可以帮助https://***.com/a/42934196/2110663
检查您的composer.json
文件是否存在app/AppKernel.php,并检查您的文件结构以确保您在路径中有此文件。
就我而言,我在 composer.json 中有下一部分(请参阅类图)
...
"autoload":
"psr-4":
"AppBundle\\": "src/AppBundle",
,
"classmap": [
"app/AppKernel.php",
"app/AppCache.php"
]
,
...
我尝试在不依赖代码的情况下在第一家供应商处构建 dockerfile 和缓存。所以 接下来是我的 dockerfile
...
ADD composer.json .
ADD composer.lock .
RUN composer install
...
在这种情况下,文件系统不包含 app/AppKernel.php 文件,但它需要 composer.json 文件。 要解决此问题,我们有 2 个选项:
-
更新
composer.json
并删除其中提到的有问题的文件
添加文件,或检查文件系统中是否存在
我的解决方案是在运行composer install
之前添加缺失文件。更新后的 Dockerfile 如下所示:
ADD composer.json .
ADD composer.lock .
# Fix composer install issue with adding 2 lines below
ADD app/AppKernel.php app/
ADD app/AppCache.php app/
RUN composer install
希望这个提示可能对其他人有所帮助
【讨论】:
以上是关于RuntimeException 无法扫描“app/AppKernel.php”中的类,该类似乎不是文件也不是文件夹的主要内容,如果未能解决你的问题,请参考以下文章
Google App Engine JSP 无法部署:java.lang.RuntimeException:无法获取系统 Java 编译器。请使用 JDK,而不是 JRE
任务':app:transformClassesWithDexBuilderForDebugAndroidTest'的执行失败,java.lang.RuntimeException(代
android.app.ActivityThread.performLaunchActivity 的 java.lang.RuntimeException