I've searched around and tried various suggestions but still have an issue with using SonarLint in my STS IDE. I am using
- STS 3.7.3.RELEASE
- SonarLint for Eclipse 2.1.0
- SonarLint for Eclipse Java Configuration Helper 2.1.0
- The Sonar Qube Server version is 4.5.6
- The Server Java plugin version is 3.13.1 (I have no control over this and realise this is an old version.
I have connected to the server in my IDE and bound my project to the server project. On making any change to the source i see the stack trace below
Using storage for server 'devsupport-sonar' (last update 05/10/16 15:33)
Using storage for server 'devsupport-sonar' (last update 05/10/16 15:49)
Using storage for server 'devsupport-sonar' (last update 05/10/16 15:50)
Index files
1 files indexed
Index files
1 files indexed
Index files
1 files indexed
Index files
1 files indexed
Error during analysis
java.lang.IllegalStateException: Unable to register extension org.sonar.plugins.javascript.JavaScriptSquidSensor
at org.sonarsource.sonarlint.core.container.ComponentContainer.addExtension(ComponentContainer.java:234)
at org.sonarsource.sonarlint.core.container.global.ExtensionInstaller.doInstall(ExtensionInstaller.java:91)
at org.sonarsource.sonarlint.core.container.global.ExtensionInstaller.install(ExtensionInstaller.java:54)
at org.sonarsource.sonarlint.core.container.analysis.AnalysisContainer.addBatchExtensions(AnalysisContainer.java:130)
at org.sonarsource.sonarlint.core.container.analysis.AnalysisContainer.doBeforeStart(AnalysisContainer.java:71)
at org.sonarsource.sonarlint.core.container.ComponentContainer.startComponents(ComponentContainer.java:123)
at org.sonarsource.sonarlint.core.container.ComponentContainer.execute(ComponentContainer.java:110)
at org.sonarsource.sonarlint.core.container.storage.StorageGlobalContainer.analyze(StorageGlobalContainer.java:134)
at org.sonarsource.sonarlint.core.ConnectedSonarLintEngineImpl.analyze(ConnectedSonarLintEngineImpl.java:156)
at org.sonarsource.sonarlint.core.ConnectedSonarLintEngineImpl.analyze(ConnectedSonarLintEngineImpl.java:145)
at org.sonarlint.eclipse.core.internal.server.Server.startAnalysis(Server.java:180)
at org.sonarlint.eclipse.core.internal.jobs.AnalyzeProjectJob$1.run(AnalyzeProjectJob.java:374)
Caused by: java.lang.NoClassDefFoundError: Lorg/sonar/api/checks/NoSonarFilter;
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields(Class.java:2583)
at java.lang.Class.getDeclaredFields(Class.java:1916)
at org.picocontainer.injectors.AdaptingInjection$2.run(AdaptingInjection.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at org.picocontainer.injectors.AdaptingInjection.injectionFieldAnnotated(AdaptingInjection.java:209)
at org.picocontainer.injectors.AdaptingInjection.fieldAnnotatedInjectionAdapter(AdaptingInjection.java:188)
at org.picocontainer.injectors.AdaptingInjection.createComponentAdapter(AdaptingInjection.java:57)
at org.picocontainer.behaviors.AbstractBehaviorFactory.createComponentAdapter(AbstractBehaviorFactory.java:44)
at org.picocontainer.behaviors.OptInCaching.createComponentAdapter(OptInCaching.java:45)
at org.picocontainer.DefaultPicoContainer.addComponent(DefaultPicoContainer.java:536)
at org.picocontainer.DefaultPicoContainer.access$300(DefaultPicoContainer.java:84)
at org.picocontainer.DefaultPicoContainer$AsPropertiesPicoContainer.addComponent(DefaultPicoContainer.java:1149)
at org.sonarsource.sonarlint.core.container.ComponentContainer.addExtension(ComponentContainer.java:232)
... 11 more
Caused by: java.lang.ClassNotFoundException: org.sonar.api.checks.NoSonarFilter
at org.sonar.classloader.ParentFirstStrategy.loadClass(ParentFirstStrategy.java:39)
at org.sonar.classloader.ClassRealm.loadClass(ClassRealm.java:87)
at org.sonar.classloader.ClassRealm.loadClass(ClassRealm.java:76)
... 25 more
at the risk of sounding like a cliche both myself and another developer had this working successfully only for this error to start appearing the following day without and config changes in the IDE.
Can anyone advise how I can resolve this without making any changes to the server side plugin version?