我试图使用远程Ubuntu服务器上的文档安装Wikibase。
到目前为止,我已经成功地安装了我能想到的所有东西。
run-script test提到的这里成功,没有任何错误。当我运行php maintenance/update.php时会发生错误,这会导致以下错误和回溯:
[e1bc513c383ad1e230e29e50] [no req] Error: Class 'Onoi\MessageReporter\ObservableMessageReporter' not found
Backtrace:
from /var/lib/mediawiki/extensions/Wikibase/repo/includes/Store/Sql/DatabaseSchemaUpdater.php(181)
#0 /var/lib/mediawiki/includes/installer/DatabaseUpdater.php(533): Wikibase\Repo\Store\Sql\DatabaseSchemaUpdater::rebuildPropertyTerms()
#1 /var/lib/mediawiki/includes/installer/DatabaseUpdater.php(501): DatabaseUpdater->runUpdates()
#2 /var/lib/mediawiki/maintenance/update.php(193): DatabaseUpdater->doUpdates()
#3 /var/lib/mediawiki/maintenance/doMaintenance.php(108): UpdateMediaWiki->execute()
#4 /var/lib/mediawiki/maintenance/update.php(264): require_once(string)
#5 {main}我试图了解更多关于Onoi\MessageReporter\ObservableMessageReporter的信息,但没有取得多大的成功。我不知道这个过程的哪一步会被安装,也不知道其他什么。
任何帮助都是非常非常感谢的。
更新1:我按建议将onoi/message-reporter手动添加到composer.json中,然后运行composer update。这导致了一个新的错误和跟踪:
[ee8783cf9727c2a3d0886de9] [no req] Error: Class 'Diff\Differ\MapDiffer' not found
Backtrace:
from /var/lib/mediawiki/extensions/Wikibase/lib/packages/wikibase/data-model-services/src/Diff/ItemDiffer.php(31)
#0 /var/lib/mediawiki/extensions/Wikibase/lib/packages/wikibase/data-model-services/src/Diff/EntityDiffer.php(23): Wikibase\DataModel\Services\Diff\ItemDiffer->__construct()
#1 /var/lib/mediawiki/extensions/Wikibase/repo/WikibaseRepo.ServiceWiring.php(730): Wikibase\DataModel\Services\Diff\EntityDiffer->__construct()
#2 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(447): Wikimedia\Services\ServiceContainer->{closure}()
#3 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(416): Wikimedia\Services\ServiceContainer->createService()
#4 /var/lib/mediawiki/includes/MediaWikiServices.php(279): Wikimedia\Services\ServiceContainer->getService()
#5 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(424): MediaWiki\MediaWikiServices->getService()
#6 /var/lib/mediawiki/extensions/Wikibase/repo/includes/WikibaseRepo.php(242): Wikimedia\Services\ServiceContainer->get()
#7 /var/lib/mediawiki/extensions/Wikibase/repo/WikibaseRepo.ServiceWiring.php(640): Wikibase\Repo\WikibaseRepo::getEntityDiffer()
#8 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(447): Wikimedia\Services\ServiceContainer->{closure}()
#9 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(416): Wikimedia\Services\ServiceContainer->createService()
#10 /var/lib/mediawiki/includes/MediaWikiServices.php(279): Wikimedia\Services\ServiceContainer->getService()
#11 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(424): MediaWiki\MediaWikiServices->getService()
#12 /var/lib/mediawiki/extensions/Wikibase/repo/includes/WikibaseRepo.php(237): Wikimedia\Services\ServiceContainer->get()
#13 /var/lib/mediawiki/extensions/Wikibase/repo/WikibaseRepo.ServiceWiring.php(1744): Wikibase\Repo\WikibaseRepo::getEntityChangeFactory()
#14 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(447): Wikimedia\Services\ServiceContainer->{closure}()
#15 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(416): Wikimedia\Services\ServiceContainer->createService()
#16 /var/lib/mediawiki/includes/MediaWikiServices.php(279): Wikimedia\Services\ServiceContainer->getService()
#17 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(424): MediaWiki\MediaWikiServices->getService()
#18 /var/lib/mediawiki/extensions/Wikibase/repo/includes/WikibaseRepo.php(437): Wikimedia\Services\ServiceContainer->get()
#19 /var/lib/mediawiki/extensions/Wikibase/repo/includes/Store/Sql/DatabaseSchemaUpdater.php(198): Wikibase\Repo\WikibaseRepo::getStore()
#20 /var/lib/mediawiki/includes/installer/DatabaseUpdater.php(533): Wikibase\Repo\Store\Sql\DatabaseSchemaUpdater::rebuildPropertyTerms()
#21 /var/lib/mediawiki/includes/installer/DatabaseUpdater.php(501): DatabaseUpdater->runUpdates()
#22 /var/lib/mediawiki/maintenance/update.php(193): DatabaseUpdater->doUpdates()
#23 /var/lib/mediawiki/maintenance/doMaintenance.php(108): UpdateMediaWiki->execute()
#24 /var/lib/mediawiki/maintenance/update.php(264): require_once(string)
#25 {main}更新2:我在迪夫/迪夫和数据-值/序列化中重复了上面的内容,后者导致了另一个不同的错误:
InvalidArgumentException from line 54 of /var/lib/mediawiki/vendor/data-values/serialization/src/Deserializers/DataValueDeserializer.php: $builders must map data types to callables or class names. 'DataValues\Geo\Values\GlobeCoordinateValue' is not a DataValue class.
#0 /var/lib/mediawiki/vendor/data-values/serialization/src/Deserializers/DataValueDeserializer.php(41): DataValues\Deserializers\DataValueDeserializer->assertAreDataValueClasses()
#1 /var/lib/mediawiki/extensions/Wikibase/repo/WikibaseRepo.ServiceWiring.php(497): DataValues\Deserializers\DataValueDeserializer->__construct()
#2 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(447): Wikimedia\Services\ServiceContainer->{closure}()
#3 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(416): Wikimedia\Services\ServiceContainer->createService()
#4 /var/lib/mediawiki/includes/MediaWikiServices.php(279): Wikimedia\Services\ServiceContainer->getService()
#5 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(424): MediaWiki\MediaWikiServices->getService()
#6 /var/lib/mediawiki/extensions/Wikibase/repo/includes/WikibaseRepo.php(695): Wikimedia\Services\ServiceContainer->get()
#7 /var/lib/mediawiki/extensions/Wikibase/repo/WikibaseRepo.ServiceWiring.php(1639): Wikibase\Repo\WikibaseRepo::getDataValueDeserializer()
#8 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(447): Wikimedia\Services\ServiceContainer->{closure}()
#9 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(416): Wikimedia\Services\ServiceContainer->createService()
#10 /var/lib/mediawiki/includes/MediaWikiServices.php(279): Wikimedia\Services\ServiceContainer->getService()
#11 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(424): MediaWiki\MediaWikiServices->getService()
#12 /var/lib/mediawiki/extensions/Wikibase/repo/includes/WikibaseRepo.php(943): Wikimedia\Services\ServiceContainer->get()
#13 /var/lib/mediawiki/extensions/Wikibase/repo/WikibaseRepo.ServiceWiring.php(2059): Wikibase\Repo\WikibaseRepo::getSingleEntitySourceServicesFactory()
#14 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(447): Wikimedia\Services\ServiceContainer->{closure}()
#15 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(416): Wikimedia\Services\ServiceContainer->createService()
#16 /var/lib/mediawiki/includes/MediaWikiServices.php(279): Wikimedia\Services\ServiceContainer->getService()
#17 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(424): MediaWiki\MediaWikiServices->getService()
#18 /var/lib/mediawiki/extensions/Wikibase/repo/includes/WikibaseRepo.php(948): Wikimedia\Services\ServiceContainer->get()
#19 /var/lib/mediawiki/extensions/Wikibase/repo/WikibaseRepo.ServiceWiring.php(1751): Wikibase\Repo\WikibaseRepo::getWikibaseServices()
#20 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(447): Wikimedia\Services\ServiceContainer->{closure}()
#21 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(416): Wikimedia\Services\ServiceContainer->createService()
#22 /var/lib/mediawiki/includes/MediaWikiServices.php(279): Wikimedia\Services\ServiceContainer->getService()
#23 /var/lib/mediawiki/vendor/wikimedia/services/src/ServiceContainer.php(424): MediaWiki\MediaWikiServices->getService()
#24 /var/lib/mediawiki/extensions/Wikibase/repo/includes/WikibaseRepo.php(437): Wikimedia\Services\ServiceContainer->get()
#25 /var/lib/mediawiki/extensions/Wikibase/repo/includes/Store/Sql/DatabaseSchemaUpdater.php(198): Wikibase\Repo\WikibaseRepo::getStore()
#26 /var/lib/mediawiki/includes/installer/DatabaseUpdater.php(533): Wikibase\Repo\Store\Sql\DatabaseSchemaUpdater::rebuildPropertyTerms()
#27 /var/lib/mediawiki/includes/installer/DatabaseUpdater.php(501): DatabaseUpdater->runUpdates()
#28 /var/lib/mediawiki/maintenance/update.php(193): DatabaseUpdater->doUpdates()
#29 /var/lib/mediawiki/maintenance/doMaintenance.php(108): UpdateMediaWiki->execute()
#30 /var/lib/mediawiki/maintenance/update.php(264): require_once('/var/lib/mediaw...')
#31 {main}更新3:这个问题可能有点类似于发布的这里,但还不清楚解决方案是什么。
更新4:我知道我在下面发布了我在手动安装设备时所做的事情,但是.它一度似乎与WikibaseQualityConstraints包有关,与data-values/serialization有关。基本上,当试图访问Special:SpecialPages时,会弹出一个错误,即:
[c706436afebcd43e1668b175] /mediawiki/index.php/Special:SpecialPages TypeError: Argument 2 passed to WikibaseQuality\ConstraintReport\ConstraintCheck\Helper\ConstraintParameterParser::__construct() must be an instance of Wikibase\DataModel\Deserializers\DeserializerFactory, instance of Wikibase\DataModel\DeserializerFactory given, called in /var/lib/mediawiki/extensions/WikibaseQualityConstraints/src/ServiceWiring.php on line 125因此,我想删除所有的composer.lock文件,删除data-values/serialization,需要wikibase/data-model-serialization,用composer重新安装,然后再次运行php maintenance/update.php都可以工作,但仍然是相同的错误。我不是百分之百肯定是手工安装引起了这个问题,但似乎.
发布于 2022-05-06 20:06:34
这本身并不是一个真正的答案,但我找到了一个解决方案,如果其他人想知道我做了什么,我会把它包括在内。
除了上面的软件包之外,我还使用composer require XXX安装了以下程序
在此之后,php maintenance/update.php和所有其他脚本运行时都没有出错。但是,在试图访问Special:SpecialPages时,我遇到了一个致命的错误。
我不确定这个错误是否相关,但我通过使用composer安装psr/simple-cache并重新运行php maintenance/update.php来解决它。
虽然这是一个技术上的解决方案,但我觉得这是一个更大的错误的解决方案,所以我将暂时保留这个问题。
更新1:这可能不是个好主意;请参阅问题中的更新4。
https://stackoverflow.com/questions/72145996
复制相似问题