1.Download Plugin code-owners:9bf37d8659 in
https://gerrit-ci.gerritforge.com/plugin-manager/ master repo
2.put in gerrit 3.12.0 plugins folder
3.Start Gerrit
Unable to start,meet the following error
Jun 17, 2025 8:10:53 AM com.google.common.util.concurrent.AggregateFuture log
SEVERE: Input Future failed with Error
java.lang.NoSuchMethodError: 'com.google.common.collect.ImmutableMap com.google.gerrit.server.account.AccountCache.get(java.util.Collection)'
at com.google.gerrit.plugins.codeowners.backend.CodeOwnerResolver.lookupAccounts(CodeOwnerResolver.java:630)
at com.google.gerrit.plugins.codeowners.backend.CodeOwnerResolver.resolve(CodeOwnerResolver.java:428)
at com.google.gerrit.plugins.codeowners.backend.CodeOwnerResolver.resolve(CodeOwnerResolver.java:301)
at com.google.gerrit.plugins.codeowners.backend.CodeOwnerResolver.resolve(CodeOwnerResolver.java:259)
at com.google.gerrit.plugins.codeowners.backend.CodeOwnerResolver.resolveGlobalCodeOwners(CodeOwnerResolver.java:248)
at com.google.gerrit.plugins.codeowners.backend.CodeOwnerApprovalCheckInput$Loader.getGlobalCodeOwners(CodeOwnerApprovalCheckInput.java:470)
at com.google.gerrit.plugins.codeowners.backend.CodeOwnerApprovalCheckInput$Loader.load(CodeOwnerApprovalCheckInput.java:244)
at com.google.gerrit.plugins.codeowners.backend.CodeOwnerApprovalCheck.getFileStatuses(CodeOwnerApprovalCheck.java:362)
at com.google.gerrit.plugins.codeowners.backend.CodeOwnerApprovalCheck.isSubmittable(CodeOwnerApprovalCheck.java:223)
at com.google.gerrit.plugins.codeowners.backend.CodeOwnerSubmitRule.getSubmitRecord(CodeOwnerSubmitRule.java:161)
at com.google.gerrit.plugins.codeowners.backend.CodeOwnerSubmitRule.evaluate(CodeOwnerSubmitRule.java:95)
at com.google.gerrit.server.project.SubmitRuleEvaluator.lambda$evaluate$4(SubmitRuleEvaluator.java:150)
at com.google.gerrit.server.plugincontext.PluginContext.call(PluginContext.java:343)
at com.google.gerrit.server.plugincontext.PluginSetEntryContext.call(PluginSetEntryContext.java:150)
at com.google.gerrit.server.project.SubmitRuleEvaluator.lambda$evaluate$5(SubmitRuleEvaluator.java:148)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.Iterator.forEachRemaining(Iterator.java:133)
at java.base/java.util.Spliterators$IteratorSpliterator.forEachRemaining(Spliterators.java:1939)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
at com.google.gerrit.server.project.SubmitRuleEvaluator.evaluate(SubmitRuleEvaluator.java:161)
at com.google.gerrit.server.query.change.ChangeData.submitRecords(ChangeData.java:1270)
at com.google.gerrit.server.project.SubmitRequirementsAdapter.getLegacyRequirements(SubmitRequirementsAdapter.java:58)
at com.google.gerrit.server.query.change.ChangeData.submitRequirementsIncludingLegacy(ChangeData.java:1202)
at com.google.gerrit.server.index.change.ChangeField.lambda$static$36(ChangeField.java:600)
at com.google.gerrit.index.IndexedField.get(IndexedField.java:437)
at com.google.gerrit.index.IndexedField$SearchSpec.get(IndexedField.java:151)
at com.google.gerrit.index.Schema.fieldValues(Schema.java:273)
at com.google.gerrit.index.Schema.lambda$buildFields$0(Schema.java:306)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at com.google.common.collect.CollectSpliterators$1WithCharacteristics.lambda$forEachRemaining$1(CollectSpliterators.java:72)
at java.base/java.util.stream.Streams$RangeIntSpliterator.forEachRemaining(Streams.java:104)
at com.google.common.collect.CollectSpliterators$1WithCharacteristics.forEachRemaining(CollectSpliterators.java:72)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682)
at com.google.gerrit.index.Schema.buildFields(Schema.java:308)
at com.google.gerrit.lucene.AbstractLuceneIndex.toDocument(AbstractLuceneIndex.java:359)
at com.google.gerrit.lucene.LuceneChangeIndex.insert(LuceneChangeIndex.java:235)
at com.google.gerrit.lucene.LuceneChangeIndex.insert(LuceneChangeIndex.java:105)
at com.google.gerrit.server.index.change.ChangeIndexer.indexImpl(ChangeIndexer.java:337)
at com.google.gerrit.server.index.change.ChangeIndexer.doIndex(ChangeIndexer.java:297)
at com.google.gerrit.server.index.change.ChangeIndexer.index(ChangeIndexer.java:293)
at com.google.gerrit.server.index.change.AllChangesIndexer$ProjectSliceIndexer.lambda$new$1(AllChangesIndexer.java:286)
at com.google.gerrit.server.index.change.AllChangesIndexer$ProjectSliceIndexer.index(AllChangesIndexer.java:327)
at com.google.gerrit.server.index.change.AllChangesIndexer$ProjectSliceIndexer.lambda$call$3(AllChangesIndexer.java:313)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197)
at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:1024)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499)
at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
at com.google.gerrit.server.index.change.AllChangesIndexer$ProjectSliceIndexer.call(AllChangesIndexer.java:313)
at com.google.gerrit.server.index.change.AllChangesIndexer$ProjectSliceIndexer.call(AllChangesIndexer.java:266)
at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:131)
at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:75)
at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:82)
at com.google.gerrit.server.logging.LoggingContextAwareRunnable.run(LoggingContextAwareRunnable.java:113)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317)
at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
at com.google.gerrit.server.git.WorkQueue$Task.run(WorkQueue.java:912)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1583)
Reindexing changes: changes: 50% (104903/206505), failed: 2, project-slices: 100% (255/255), Slicing projects: 100% (76/76), done