Php 容器注册表类型3不可用
在部署时,尝试调用typo3 cli命令时出现以下异常<代码>/typo3cms列表。在本地环境中,这不会发生Php 容器注册表类型3不可用,php,deployment,typo3,command-line-interface,Php,Deployment,Typo3,Command Line Interface,在部署时,尝试调用typo3 cli命令时出现以下异常/typo3cms列表。在本地环境中,这不会发生 Uncaught TYPO3 Exception #1519978105: Container entry "TYPO3\CMS\Core\Console\CommandRegistry" is not available. 由于执行命令时未将composer.json和composer.lock部署到计算机上,因此会发生。 在这些文件中,设置了调用这些命令所需的配置/引导。您可能在部署配置
Uncaught TYPO3 Exception #1519978105: Container entry "TYPO3\CMS\Core\Console\CommandRegistry" is not available.
由于执行命令时未将
composer.json
和composer.lock
部署到计算机上,因此会发生。
在这些文件中,设置了调用这些命令所需的配置/引导。您可能在部署配置中排除了所有名为composer.json
的文件。
这样做会排除所需的根composer.json
,但也会从EXT:core
中排除composer.json
,这可能是您不打算排除的
因此,请确保将您的部署调整为仅排除/composer.json
,而不是通常排除composer.json
:
exclude:
- /composer.json
背景:容器条目TYPO3\CMS\Core\Console\CommandRegistry
由服务提供商TYPO3\CMS\Core\ServiceProvider
定义,该服务提供商在TYPO3/sysext/Core/composer.json
中注册:
"typo3/cms": {
"Package": {
"serviceProvider": "TYPO3\\CMS\\Frontend\\ServiceProvider"
}
}
删除
composer.json
文件时,服务提供商注册不可用,因此不会定义容器条目。谢谢!这可能会花费我几个小时来发现,这正是我的冲浪部署设置的问题所在。立竿见影!注意:您只需要TYPO3扩展名的compser.json
文件,不需要根composer.json
和composer.lock
文件。因此,请确保在部署期间仅排除/composer.json
,而不是一般排除所有composer.json
文件。