Hello,
I’m unable to get sonar-scanner to work from the command line. My SC user account is the administrator for our organization and I have verified that I have Execute Analysis rights for the project in question.
- ALM used is Azure DevOps (although I’m attempting to run sonar-scanner locally)
- No CI system used
- Scanner command used is
sonar-scanner \
-Dsonar.organization=**** \
-Dsonar.projectKey=****** \
-Dsonar.sources=. \
-Dsonar.host.url=https://sonarcloud.io
- Language is JavaScript
- Error observed is (with project key anonymized)
...
10:56:02.456 INFO: Loaded core extensions: developer-scanner
10:56:02.472 DEBUG: Installed core extension: developer-scanner
10:56:02.735 DEBUG: Could not detect any CI vendor
10:56:02.742 INFO: Load project settings for component key: '******'
10:56:02.890 DEBUG: GET 403 https://sonarcloud.io/api/settings/values.protobuf?component=ProKnow | time=148ms
10:56:02.897 INFO: ------------------------------------------------------------------------
10:56:02.897 INFO: EXECUTION FAILURE
10:56:02.897 INFO: ------------------------------------------------------------------------
10:56:02.898 INFO: Total time: 3.083s
10:56:02.910 INFO: Final Memory: 6M/74M
10:56:02.910 INFO: ------------------------------------------------------------------------
10:56:02.910 ERROR: Error during SonarScanner execution
java.lang.IllegalStateException: Unable to load component class org.sonar.scanner.ci.AnalysisMethodValidator
at org.sonar.core.platform.ComponentContainer$ExtendedDefaultPicoContainer.getComponent(ComponentContainer.java:52)
at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:678)
at org.sonar.core.platform.ComponentContainer.getComponentByType(ComponentContainer.java:273)
at org.sonar.scanner.scan.ProjectScanContainer.doBeforeStart(ProjectScanContainer.java:162)
at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:121)
at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:109)
at org.sonar.scanner.bootstrap.GlobalContainer.doAfterStart(GlobalContainer.java:128)
at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:123)
at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:109)
at org.sonar.batch.bootstrapper.Batch.doExecute(Batch.java:58)
at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:52)
at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60)
at com.sun.proxy.$Proxy0.execute(Unknown Source)
at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:189)
at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:138)
at org.sonarsource.scanner.cli.Main.execute(Main.java:112)
at org.sonarsource.scanner.cli.Main.execute(Main.java:75)
at org.sonarsource.scanner.cli.Main.main(Main.java:61)
Caused by: java.lang.IllegalStateException: Unable to load component class org.sonar.scanner.scan.ProjectServerSettings
at org.sonar.core.platform.ComponentContainer$ExtendedDefaultPicoContainer.getComponent(ComponentContainer.java:52)
at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:632)
at org.picocontainer.parameters.BasicComponentParameter$1.resolveInstance(BasicComponentParameter.java:118)
at org.picocontainer.parameters.ComponentParameter$1.resolveInstance(ComponentParameter.java:136)
at org.picocontainer.injectors.SingleMemberInjector.getParameter(SingleMemberInjector.java:78)
at org.picocontainer.injectors.ConstructorInjector$CtorAndAdapters.getParameterArguments(ConstructorInjector.java:309)
at org.picocontainer.injectors.ConstructorInjector$1.run(ConstructorInjector.java:335)
at org.picocontainer.injectors.AbstractInjector$ThreadLocalCyclicDependencyGuard.observe(AbstractInjector.java:270)
at org.picocontainer.injectors.ConstructorInjector.getComponentInstance(ConstructorInjector.java:364)
at org.picocontainer.injectors.AbstractInjectionFactory$LifecycleAdapter.getComponentInstance(AbstractInjectionFactory.java:56)
at org.picocontainer.behaviors.AbstractBehavior.getComponentInstance(AbstractBehavior.java:64)
at org.picocontainer.behaviors.Stored.getComponentInstance(Stored.java:91)
at org.picocontainer.DefaultPicoContainer.getInstance(DefaultPicoContainer.java:699)
at org.picocontainer.DefaultPicoContainer.getComponent(DefaultPicoContainer.java:647)
at org.sonar.core.platform.ComponentContainer$ExtendedDefaultPicoContainer.getComponent(ComponentContainer.java:50)
... 22 more
Caused by: You're not authorized to run analysis. Please contact the project administrator.
-
Steps to reproduce
- Log in to SonarCloud account
- Verify that I am ADMIN for the organization
- Click “+” and “Analyze New Project” link
- Click “create a project manually”
- Select our organization
- Enter project key and display name
- Click “Setup” button
- On the ‘Choose your Analysis Method’ page, select “Other (for JS,…)”
- Select “Linux” for OS
- Download SonarScanner zip, unzip into Ubuntu WSL2, run
chmod 755
onsonar-scanner
andjava
executables from the zip - Add
bin
to thePATH
var - Set
SONAR_TOKEN
var to token given during setup - Copy given command
- Run copied command at top of source directory
-
Potential workaround: None, I’m totally stuck
Any help would be greatly appreciated.
Thanks