Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Line number must be strictly positive: 0 #257

Open
yurll opened this issue Nov 20, 2019 · 8 comments
Open

Line number must be strictly positive: 0 #257

yurll opened this issue Nov 20, 2019 · 8 comments

Comments

@yurll
Copy link

yurll commented Nov 20, 2019

Issue Description

Error while running sonar scanner with sonar-swift plugin enabled.
the file run-sonar-swift.sh is the latest.

Command executed

run-sonar-swift.sh

building with an additional parameter:
buildCmd+=(-UseModernBuildSystem=NO)

Complete output when running fastlane, including the stack trace and command used
 
0.4.5 throws the following error:

INFO: EXECUTION FAILURE
INFO: ------------------------------------------------------------------------
INFO: Total time: 26.634s
INFO: Final Memory: 12M/50M
INFO: ------------------------------------------------------------------------
ERROR: Error during SonarQube Scanner execution
WARNING: All illegal access operations will be denied in a future release
....ERROR: Error during SonarQube Scanner execution
java.lang.IllegalStateException: Line number must be strictly positive: 0
at org.sonar.api.internal.google.common.base.Preconditions.checkState(Preconditions.java:197)
at org.sonar.api.batch.sensor.coverage.internal.DefaultCoverage.validateLine(DefaultCoverage.java:94)
at org.sonar.api.batch.sensor.coverage.internal.DefaultCoverage.lineHits(DefaultCoverage.java:81)
at com.backelite.sonarqube.swift.coverage.CoberturaReportParser.collectFileData(CoberturaReportParser.java:109)
at com.backelite.sonarqube.swift.coverage.CoberturaReportParser.collectClassMeasures(CoberturaReportParser.java:91)
at com.backelite.sonarqube.swift.coverage.CoberturaReportParser.collectPackageMeasures(CoberturaReportParser.java:79)
at com.backelite.sonarqube.swift.coverage.CoberturaReportParser.parseReport(CoberturaReportParser.java:61)
at com.backelite.sonarqube.swift.coverage.CoberturaSensor.execute(CoberturaSensor.java:69)
at org.sonar.scanner.sensor.AbstractSensorWrapper.analyse(AbstractSensorWrapper.java:48)
at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:85)
at org.sonar.scanner.sensor.ModuleSensorsExecutor.lambda$execute$1(ModuleSensorsExecutor.java:59)
at org.sonar.scanner.sensor.ModuleSensorsExecutor.withModuleStrategy(ModuleSensorsExecutor.java:77)
at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:59)
at org.sonar.scanner.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:82)
at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136)
at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122)
at org.sonar.scanner.scan.ProjectScanContainer.scan(ProjectScanContainer.java:400)
at org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:395)
at org.sonar.scanner.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:358)
at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136)
at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122)
at org.sonar.scanner.bootstrap.GlobalContainer.doAfterStart(GlobalContainer.java:141)
at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136)
at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122)
at org.sonar.batch.bootstrapper.Batch.doExecute(Batch.java:73)
at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:67)
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)
ERROR:
ERROR: Re-run SonarQube Scanner using the -X switch to enable full debug logging.
ERROR - Command 'sonar-scanner ' failed with error code: 1

Environment

 
INFO: SonarQube Scanner 4.2.0.1873
INFO: Java 11.0.3 AdoptOpenJDK (64-bit)
INFO: Mac OS X 10.14.5 x86_64

Plugin version: latest: 0.4.5

@sebastianpetri
Copy link

The error has already been discussed here:
#212
But the bug has solved another problem. We have the same problem as you right now.

@sashi01
Copy link

sashi01 commented Feb 2, 2020

Same here :

SonarQube 7.9.2
SonarScanner 4.2.0
sonar-swift 0.4.6

ERROR: Error during SonarQube Scanner execution java.lang.IllegalStateException: Line number must be strictly positive: 0 at org.sonar.api.internal.google.common.base.Preconditions.checkState(Preconditions.java:197) at org.sonar.api.batch.sensor.coverage.internal.DefaultCoverage.validateLine(DefaultCoverage.java:94) at org.sonar.api.batch.sensor.coverage.internal.DefaultCoverage.lineHits(DefaultCoverage.java:81) at com.backelite.sonarqube.swift.coverage.CoberturaReportParser.collectFileData(CoberturaReportParser.java:109) at com.backelite.sonarqube.swift.coverage.CoberturaReportParser.collectClassMeasures(CoberturaReportParser.java:91) at com.backelite.sonarqube.swift.coverage.CoberturaReportParser.collectPackageMeasures(CoberturaReportParser.java:79) at com.backelite.sonarqube.swift.coverage.CoberturaReportParser.parseReport(CoberturaReportParser.java:61) at com.backelite.sonarqube.swift.coverage.CoberturaSensor.execute(CoberturaSensor.java:69) at org.sonar.scanner.sensor.AbstractSensorWrapper.analyse(AbstractSensorWrapper.java:48) at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:85) at org.sonar.scanner.sensor.ModuleSensorsExecutor.lambda$execute$1(ModuleSensorsExecutor.java:59) at org.sonar.scanner.sensor.ModuleSensorsExecutor.withModuleStrategy(ModuleSensorsExecutor.java:77) at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:59) at org.sonar.scanner.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:82) at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136) at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122) at org.sonar.scanner.scan.ProjectScanContainer.scan(ProjectScanContainer.java:400) at org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:395) at org.sonar.scanner.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:358) at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136) at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122) at org.sonar.scanner.bootstrap.GlobalContainer.doAfterStart(GlobalContainer.java:141) at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136) at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122) at org.sonar.batch.bootstrapper.Batch.doExecute(Batch.java:73) at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:67) 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) ERROR:

@yurll
Copy link
Author

yurll commented Mar 19, 2020

Hi, switched from Ubuntu to macOS environment:
server: System Version: macOS 10.14.5 (18F132)
Kernel Version: Darwin 18.6.0

SonarQube: 8.2.0
SonarScanner: 4.2.0.1873
Sonar-Swift: 0.4.6

The issue still here.

Please note again, that we still use an additional build parameter:
-UseModernBuildSystem=NO

@Maetschl
Copy link

Same problem here.

SonarQube 7.9.2 (build 30863)
SonarScanner 4.3.0.2102
Java 14 Oracle Corporation (64-bit)
Mac OS X 10.15.3 x86_64

@sebastianpetri
Copy link

Apparently Cobertura does not get along with the extended Elvis operator with closures within an object inits.

we fix our problem by changing
self.cellConfiguration = VerbindungsdetailsCellConfiguration( displayNotizenDetails: openNotizenDetails ?? { _ in }, openAktuelleAlternativeInfo: openAktuelleAlternativeInfo ?? { _ in }, openAufhebungFahrbindungInfo: openAufhebungFahrbindungInfo ?? { _ in }, ....
to
self.cellConfiguration = VerbindungsdetailsCellConfiguration( displayNotizenDetails: openNotizenDetails, openAktuelleAlternativeInfo: openAktuelleAlternativeInfo, openAufhebungFahrbindungInfo: openAufhebungFahrbindungInfo, ....

I hope this helps you with your problems. :)

@carlos-evolutive
Copy link

A quick, dirty fix for this is running this command:

sed -i.bak '/<line number="0"/d' ./sonar-reports/*.xml

Then run again:
sonar-scanner -X

You can edit run-sonar-swift.sh, line 545 with:

# Filter buggy line 0 entries
sed -i.bak '/<line number="0"/d' "sonar-reports/"*.xml

# Build sonar-runner / sonnar-scanner arguments

Well it works :-p

@mejiagarcia
Copy link

A quick, dirty fix for this is running this command:

sed -i.bak '/<line number="0"/d' ./sonar-reports/*.xml

Then run again:
sonar-scanner -X

You can edit run-sonar-swift.sh, line 545 with:

# Filter buggy line 0 entries
sed -i.bak '/<line number="0"/d' "sonar-reports/"*.xml

# Build sonar-runner / sonnar-scanner arguments

Well it works :-p

Thank you! you saved my life, i have had this problem since i upgraded to Catalina, in my case i put this line right before the run SonarQube scanner part.

@sharmahimanshuaws
Copy link

Error: LinkageError occurred while loading main class org.sonarsource.scanner.cli.Main
java.lang.UnsupportedClassVersionError: org/sonarsource/scanner/cli/Main has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 55.0
WARN: Unable to locate 'report-task.txt' in the workspace. Did the SonarScanner succeed?
ERROR: SonarQube scanner exited with non-zero code: 1
Finished: FAILURE

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants