java.lang.NoClassDefFoundError: org/apache/commons/logging/Log

Please provide

  • Operating system:
  • SonarLint plugin version:
  • 10.12.0.79769
  • IntelliJ version:
  • IntelliJ IDEA 2023.1 (Ultimate Edition)

Build #IU-231.8109.175, built on March 28, 2023
Runtime version: 17.0.6+10-b829.5 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Windows 10.0
GC: G1 Young Generation, G1 Old Generation
Memory: 4048M
Cores: 16
Registry:
debugger.watches.in.variables=false
debugger.new.tool.window.layout=true
ide.experimental.ui=true
editor.minimap.enabled=true

Non-Bundled Plugins:
org.antlr.intellij.plugin (1.20)
de.netnexus.camelcaseplugin (3.0.12)
com.godwin.json.parser (1.6.1)
monokai-pro (1.10)
Statistic (4.2.14)
com.intellij.zh (231.283)
cn.xr21.newbing (2023.6.6)
com.github.copilot (1.2.16.2847)
ChatGPT (3.0.4-231.232)
String Manipulation (9.9.0)
com.intellij.lang.jsgraphql (4.0.0)
MavenRunHelper (4.23.222.2964.0)
com.alibabacloud.intellij.cosy (1.4.2)
com.intellij.bigdatatools (231.8109.175)
cn.yiiguxing.plugin.translate (3.5.0)
org.sonarlint.idea (10.12.0.79769)
com.baomidou.plugin.idea.mybatisx (1.5.5)

Kotlin: 231-1.8.20-IJ8109.175

  • Programming language you’re coding in:
  • Is connected mode used:
    • Connected to SonarCloud or SonarQube (and which version):

And a thorough description of the problem / question:

when i used the option “Bind project to SonarQube” and run “Analyze Current File”.an error occurs:

Analysing 13 files (ID 5522e24a-b1ef-4e0d-b977-6cb8c0327b38)...
 [2024-11-11T19:06:13.829] [SonarLint Server RPC request executor] ERROR org.eclipse.lsp4j.jsonrpc.RemoteEndpoint - Internal error: java.lang.IllegalStateException: Unable to extract rules metadata
java.util.concurrent.CompletionException: java.lang.IllegalStateException: Unable to extract rules metadata
	at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:315)
	at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:320)
	at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:649)
	at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.lang.IllegalStateException: Unable to extract rules metadata
	at org.sonarsource.sonarlint.core.rule.extractor.RulesDefinitionExtractor.extractRules(RulesDefinitionExtractor.java:42)
	at org.sonarsource.sonarlint.core.rules.RulesExtractionHelper.extractRulesForConnection(RulesExtractionHelper.java:57)
	at org.sonarsource.sonarlint.core.repository.rules.RulesRepository.lazyInit(RulesRepository.java:85)
	at org.sonarsource.sonarlint.core.repository.rules.RulesRepository.getRule(RulesRepository.java:76)
	at org.sonarsource.sonarlint.core.analysis.AnalysisService.tryConvertDeprecatedKeys(AnalysisService.java:406)
	at org.sonarsource.sonarlint.core.analysis.AnalysisService.lambda$buildConnectedActiveRules$7(AnalysisService.java:323)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:183)
	at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179)
	at java.base/java.util.HashMap$EntrySpliterator.forEachRemaining(HashMap.java:1850)
	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:150)
	at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:173)
	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
	at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596)
	at org.sonarsource.sonarlint.core.analysis.AnalysisService.buildConnectedActiveRules(AnalysisService.java:317)
	at org.sonarsource.sonarlint.core.analysis.AnalysisService.lambda$getAnalysisConfig$1(AnalysisService.java:256)
	at java.base/java.util.Optional.map(Optional.java:260)
at org.sonarsource.sonarlint.core.analysis.AnalysisService.getAnalysisConfig(AnalysisService.java:252)
	at org.sonarsource.sonarlint.core.analysis.AnalysisService.getAnalysisConfigForEngine(AnalysisService.java:264)
	at org.sonarsource.sonarlint.core.analysis.AnalysisService.analyze(AnalysisService.java:625)
	at org.sonarsource.sonarlint.core.rpc.impl.AnalysisRpcServiceDelegate.lambda$analyzeFilesAndTrack$8(AnalysisRpcServiceDelegate.java:141)
	at org.sonarsource.sonarlint.core.rpc.impl.AbstractRpcServiceDelegate.lambda$requestAsync$0(AbstractRpcServiceDelegate.java:67)
	at org.sonarsource.sonarlint.core.rpc.impl.AbstractRpcServiceDelegate.computeWithLogger(AbstractRpcServiceDelegate.java:135)
	at org.sonarsource.sonarlint.core.rpc.impl.AbstractRpcServiceDelegate.lambda$requestAsync$1(AbstractRpcServiceDelegate.java:65)
	at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:646)
	... 4 common frames omitted
Caused by: java.lang.IllegalStateException: Unable to load component class org.sonarsource.sonarlint.core.rule.extractor.RuleDefinitionsLoader
	at org.sonarsource.sonarlint.core.plugin.commons.container.SpringComponentContainer.getComponentByType(SpringComponentContainer.java:132)
	at org.sonarsource.sonarlint.core.rule.extractor.RulesDefinitionExtractorContainer.doAfterStart(RulesDefinitionExtractorContainer.java:79)
	at org.sonarsource.sonarlint.core.plugin.commons.container.SpringComponentContainer.startComponents(SpringComponentContainer.java:182)
	at org.sonarsource.sonarlint.core.plugin.commons.container.SpringComponentContainer.execute(SpringComponentContainer.java:161)
	at org.sonarsource.sonarlint.core.rule.extractor.RulesDefinitionExtractor.extractRules(RulesDefinitionExtractor.java:39)
	... 29 common frames omitted
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jdk.internal.loader.ClassLoaders$AppClassLoader@77a567e1-org.sonarsource.sonarlint.core.rule.extractor.RuleDefinitionsLoader': Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.sonarsource.sonarlint.core.rule.extractor.RuleDefinitionsLoader]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: org/apache/commons/logging/Log

Hello @jianzhong_lin,

It seems one of the plugin from the server is relying on apache-commons when loading the rules. Could you please query the api/plugins/installed web API on your SonarQube Server instance and return the list here?