SonarQube crashes on file with \n line-endings

  • which versions are you using: SonarQube Server
  • how is SonarQube deployed: Docker
  • Version: v10.7 (96327)

The error:

java.lang.IllegalArgumentException: 4 is not a valid line offset for pointer.

The file had \n (instead of \r\n for all other files) line-endings.
Why does SonarQube crash on this? Seems like a pretty standard line-ending for Linux, Mac, … users?
Or do we have a configuration issue somewhere or something?

2025-03-04T09:38:16.7636183Z ##[error]ERROR: Failure during analysis
java.lang.IllegalArgumentException: 4 is not a valid line offset for pointer. File Scripts/angular/d3.js has 3 character(s) at line 2302
2025-03-04T09:38:16.7651840Z ERROR: Failure during analysis
2025-03-04T09:38:16.7653578Z java.lang.IllegalArgumentException: 4 is not a valid line offset for pointer. File .ServerArtifacts/_PublishedWebsites/Fluxys.EBB.Extranet.Web/Scripts/angular/d3.js has 3 character(s) at line 2302
2025-03-04T09:38:16.7661995Z ##[error]at org.sonar.api.utils.Preconditions.checkArgument(Preconditions.java:43)
	at org.sonar.api.batch.fs.internal.DefaultInputFile.checkValid(DefaultInputFile.java:374)
	at org.sonar.api.batch.fs.internal.DefaultInputFile.newPointer(DefaultInputFile.java:307)
	at org.sonar.api.batch.fs.internal.DefaultInputFile.newRange(DefaultInputFile.java:323)
	at org.sonar.plugins.javascript.analysis.AnalysisProcessor.newSecondaryLocation(AnalysisProcessor.java:383)
	at org.sonar.plugins.javascript.analysis.AnalysisProcessor.lambda$saveIssue$0(AnalysisProcessor.java:322)
	at java.base/java.util.ArrayList.forEach(Unknown Source)
	at org.sonar.plugins.javascript.analysis.AnalysisProcessor.saveIssue(AnalysisProcessor.java:321)
	at org.sonar.plugins.javascript.analysis.AnalysisProcessor.saveIssues(AnalysisProcessor.java:191)
	at org.sonar.plugins.javascript.analysis.AnalysisProcessor.processResponse(AnalysisProcessor.java:116)
	at org.sonar.plugins.javascript.analysis.AbstractAnalysis.analyzeFile(AbstractAnalysis.java:112)
	at org.sonar.plugins.javascript.analysis.AnalysisWithProgram.analyzeProgram(AnalysisWithProgram.java:137)
	at org.sonar.plugins.javascript.analysis.AnalysisWithProgram.analyzeFiles(AnalysisWithProgram.java:90)
	at org.sonar.plugins.javascript.analysis.JsTsSensor.analyzeFiles(JsTsSensor.java:128)
	at org.sonar.plugins.javascript.analysis.AbstractBridgeSensor.execute(AbstractBridgeSensor.java:77)
	at org.sonar.scanner.sensor.AbstractSensorWrapper.analyse(AbstractSensorWrapper.java:64)
2025-03-04T09:38:16.7665991Z 	at org.sonar.api.utils.Preconditions.checkArgument(Preconditions.java:43)
2025-03-04T09:38:16.7666528Z 	at org.sonar.api.batch.fs.internal.DefaultInputFile.checkValid(DefaultInputFile.java:374)
2025-03-04T09:38:16.7667050Z 	at org.sonar.api.batch.fs.internal.DefaultInputFile.newPointer(DefaultInputFile.java:307)
2025-03-04T09:38:16.7667574Z 	at org.sonar.api.batch.fs.internal.DefaultInputFile.newRange(DefaultInputFile.java:323)
2025-03-04T09:38:16.7668110Z 	at org.sonar.plugins.javascript.analysis.AnalysisProcessor.newSecondaryLocation(AnalysisProcessor.java:383)
2025-03-04T09:38:16.7668879Z 	at org.sonar.plugins.javascript.analysis.AnalysisProcessor.lambda$saveIssue$0(AnalysisProcessor.java:322)
2025-03-04T09:38:16.7669391Z 	at java.base/java.util.ArrayList.forEach(Unknown Source)
2025-03-04T09:38:16.7669886Z 	at org.sonar.plugins.javascript.analysis.AnalysisProcessor.saveIssue(AnalysisProcessor.java:321)
2025-03-04T09:38:16.7670420Z 	at org.sonar.plugins.javascript.analysis.AnalysisProcessor.saveIssues(AnalysisProcessor.java:191)
2025-03-04T09:38:16.7670959Z 	at org.sonar.plugins.javascript.analysis.AnalysisProcessor.processResponse(AnalysisProcessor.java:116)
2025-03-04T09:38:16.7671494Z 	at org.sonar.plugins.javascript.analysis.AbstractAnalysis.analyzeFile(AbstractAnalysis.java:112)
2025-03-04T09:38:16.7672018Z 	at org.sonar.plugins.javascript.analysis.AnalysisWithProgram.analyzeProgram(AnalysisWithProgram.java:137)
2025-03-04T09:38:16.7673383Z 	at org.sonar.plugins.javascript.analysis.AnalysisWithProgram.analyzeFiles(AnalysisWithProgram.java:90)
2025-03-04T09:38:16.7673945Z 	at org.sonar.plugins.javascript.analysis.JsTsSensor.analyzeFiles(JsTsSensor.java:128)
2025-03-04T09:38:16.7674476Z 	at org.sonar.plugins.javascript.analysis.AbstractBridgeSensor.execute(AbstractBridgeSensor.java:77)
2025-03-04T09:38:16.7676573Z 	at org.sonar.scanner.sensor.AbstractSensorWrapper.analyse(AbstractSensorWrapper.java:64)
2025-03-04T09:38:16.7678017Z ##[error]at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:88)
	at org.sonar.scanner.sensor.ModuleSensorsExecutor.lambda$execute$1(ModuleSensorsExecutor.java:61)
	at org.sonar.scanner.sensor.ModuleSensorsExecutor.withModuleStrategy(ModuleSensorsExecutor.java:79)
2025-03-04T09:38:16.7684479Z 	at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:88)
2025-03-04T09:38:16.7685618Z 	at org.sonar.scanner.sensor.ModuleSensorsExecutor.lambda$execute$1(ModuleSensorsExecutor.java:61)
2025-03-04T09:38:16.7686745Z 	at org.sonar.scanner.sensor.ModuleSensorsExecutor.withModuleStrategy(ModuleSensorsExecutor.java:79)
2025-03-04T09:38:16.7717322Z ##[error]at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:61)
	at org.sonar.scanner.scan.SpringModuleScanContainer.doAfterStart(SpringModuleScanContainer.java:82)
	at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:226)
	at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:205)
	at org.sonar.scanner.scan.SpringProjectScanContainer.scan(SpringProjectScanContainer.java:204)
	at org.sonar.scanner.scan.SpringProjectScanContainer.scanRecursively(SpringProjectScanContainer.java:200)
2025-03-04T09:38:16.7732975Z 	at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:61)
2025-03-04T09:38:16.7733700Z 	at org.sonar.scanner.scan.SpringModuleScanContainer.doAfterStart(SpringModuleScanContainer.java:82)
2025-03-04T09:38:16.7734237Z 	at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:226)
2025-03-04T09:38:16.7734779Z 	at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:205)
2025-03-04T09:38:16.7735300Z 	at org.sonar.scanner.scan.SpringProjectScanContainer.scan(SpringProjectScanContainer.java:204)
2025-03-04T09:38:16.7735830Z 	at org.sonar.scanner.scan.SpringProjectScanContainer.scanRecursively(SpringProjectScanContainer.java:200)
2025-03-04T09:38:16.7736316Z INFO: Hit the cache for 0 out of 5
2025-03-04T09:38:16.7736789Z INFO: Miss the cache for 5 out of 5: ANALYSIS_MODE_INELIGIBLE [5/5]
2025-03-04T09:38:16.7740100Z ##[error]at org.sonar.scanner.scan.SpringProjectScanContainer.doAfterStart(SpringProjectScanContainer.java:173)
	at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:226)
	at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:205)
	at org.sonar.scanner.bootstrap.SpringScannerContainer.doAfterStart(SpringScannerContainer.java:351)
	at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:226)
	at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:205)
	at org.sonar.scanner.bootstrap.SpringGlobalContainer.doAfterStart(SpringGlobalContainer.java:144)
	at org.sonar.core.platform.SpringComponentContainer.startComponents(SpringComponentContainer.java:226)
	at org.sonar.core.platform.SpringComponentContainer.execute(SpringComponentContainer.java:205)
	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 jdk.proxy1/jdk.proxy1.$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:126)
	at org.sonarsource.scanner.cli.Main.execute(Main.java:81)
	at org.sonarsource.scanner.cli.Main.main(Main.java:62)

Hi,

It generally doesn’t. Can you share why you think it’s the line ending, specifically? Does the line have any special characters in it?

Can you share the file?

Also, 10.7 is EOL. You should upgrade to SonarQube Server 2025.1 or SonarQube Community Build 25.3 at your earliest convenience.

 
Ann

The file is d3.js, so probably downloaded from the internet at some point.

The line it complains about (#2302) is 2 spaces and a }, I checked for special characters on that line but it’s 2 regular spaces.

  }

I’ve attached the file here (it’s a JS file which I renamed to .zip because it didn’t allow uploading a js file)

d3.js.zip (330.0 KB)

After I converted the LF to CRLF and ran SonarQube, it worked without issues… (I did convert it for the whole file, not just on line 2302)

Hi,

The LF / \n line ending is standard, in my experience. I’m not sure what to tell you.

 
Ann