SonarJS failure

  • SQ: 7.9.0 LTS
  • SonarJS 5.2.1.7778 (javascript)

During the analisys of a javascript file I notice 2 problems:

  • jspdf.src.js file analysis takes ~1 hour (file has 740KB)
  • the following exception is throw (stack with -X)

how to identify which is the cause

23:49:11.309 ERROR: Unable to analyse file: xxxxx/highcharts/lib/jspdf.src.js
java.lang.ClassCastException: org.sonar.javascript.tree.impl.expression.IdentifierTreeImpl cannot be cast to org.sonar.plugins.javascript.api.tree.expression.LiteralTree
        at org.sonar.javascript.checks.DeadStoreCheck.isBasicValue(DeadStoreCheck.java:177)
        at org.sonar.javascript.checks.DeadStoreCheck.initializedToBasicValue(DeadStoreCheck.java:165)
        at org.sonar.javascript.checks.DeadStoreCheck.checkUsage(DeadStoreCheck.java:148)
        at org.sonar.javascript.checks.DeadStoreCheck.checkCFG(DeadStoreCheck.java:125)
        at org.sonar.javascript.checks.DeadStoreCheck.checkFunction(DeadStoreCheck.java:100)
        at org.sonar.javascript.checks.DeadStoreCheck.visitFunctionExpression(DeadStoreCheck.java:73)
        at org.sonar.javascript.tree.impl.expression.FunctionExpressionTreeImpl.accept(FunctionExpressionTreeImpl.java:151)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitInitializedBindingElement(DoubleDispatchVisitor.java:410)
        at org.sonar.javascript.tree.impl.declaration.InitializedBindingElementTreeImpl.accept(InitializedBindingElementTreeImpl.java:74)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitVariableDeclaration(DoubleDispatchVisitor.java:266)
        at org.sonar.javascript.tree.impl.statement.VariableDeclarationTreeImpl.accept(VariableDeclarationTreeImpl.java:76)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitVariableStatement(DoubleDispatchVisitor.java:262)
        at org.sonar.javascript.tree.impl.statement.VariableStatementTreeImpl.accept(VariableStatementTreeImpl.java:65)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitBlock(DoubleDispatchVisitor.java:306)
        at org.sonar.javascript.tree.impl.statement.BlockTreeImpl.accept(BlockTreeImpl.java:83)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitFunctionExpression(DoubleDispatchVisitor.java:486)
        at org.sonar.javascript.checks.DeadStoreCheck.visitFunctionExpression(DeadStoreCheck.java:74)
        at org.sonar.javascript.tree.impl.expression.FunctionExpressionTreeImpl.accept(FunctionExpressionTreeImpl.java:151)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitParenthesisedExpression(DoubleDispatchVisitor.java:470)
        at org.sonar.javascript.tree.impl.expression.ParenthesisedExpressionTreeImpl.accept(ParenthesisedExpressionTreeImpl.java:80)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitCallExpression(DoubleDispatchVisitor.java:454)
        at org.sonar.javascript.tree.impl.expression.CallExpressionTreeImpl.accept(CallExpressionTreeImpl.java:68)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitExpressionStatement(DoubleDispatchVisitor.java:318)
        at org.sonar.javascript.tree.impl.statement.ExpressionStatementTreeImpl.accept(ExpressionStatementTreeImpl.java:66)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitBlock(DoubleDispatchVisitor.java:306)
        at org.sonar.javascript.tree.impl.statement.BlockTreeImpl.accept(BlockTreeImpl.java:83)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitFunctionExpression(DoubleDispatchVisitor.java:486)
        at org.sonar.javascript.checks.DeadStoreCheck.visitFunctionExpression(DeadStoreCheck.java:74)
        at org.sonar.javascript.tree.impl.expression.FunctionExpressionTreeImpl.accept(FunctionExpressionTreeImpl.java:151)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitParenthesisedExpression(DoubleDispatchVisitor.java:470)
        at org.sonar.javascript.tree.impl.expression.ParenthesisedExpressionTreeImpl.accept(ParenthesisedExpressionTreeImpl.java:80)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitArgumentList(DoubleDispatchVisitor.java:298)
        at org.sonar.javascript.tree.impl.expression.ArgumentListTreeImpl.accept(ArgumentListTreeImpl.java:78)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitCallExpression(DoubleDispatchVisitor.java:454)
        at org.sonar.javascript.tree.impl.expression.CallExpressionTreeImpl.accept(CallExpressionTreeImpl.java:68)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitParenthesisedExpression(DoubleDispatchVisitor.java:470)
        at org.sonar.javascript.tree.impl.expression.ParenthesisedExpressionTreeImpl.accept(ParenthesisedExpressionTreeImpl.java:80)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitExpressionStatement(DoubleDispatchVisitor.java:318)
        at org.sonar.javascript.tree.impl.statement.ExpressionStatementTreeImpl.accept(ExpressionStatementTreeImpl.java:66)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitModule(DoubleDispatchVisitor.java:206)
        at org.sonar.javascript.tree.impl.declaration.ModuleTreeImpl.accept(ModuleTreeImpl.java:56)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitScript(DoubleDispatchVisitor.java:202)
        at org.sonar.javascript.tree.impl.declaration.ScriptTreeImpl.accept(ScriptTreeImpl.java:74)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scan(DoubleDispatchVisitor.java:180)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanTree(DoubleDispatchVisitor.java:175)
        at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitorCheck.scanFile(DoubleDispatchVisitorCheck.java:34)
        at org.sonar.plugins.javascript.JavaScriptSensor.scanFile(JavaScriptSensor.java:238)
        at org.sonar.plugins.javascript.JavaScriptSensor.analyse(JavaScriptSensor.java:181)
        at org.sonar.plugins.javascript.JavaScriptSensor.analyseFiles(JavaScriptSensor.java:151)
        at org.sonar.plugins.javascript.JavaScriptSensor.execute(JavaScriptSensor.java:338)
        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 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        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:171)
        at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:128)
        at org.sonarsource.scanner.cli.Main.execute(Main.java:111)
        at org.sonarsource.scanner.cli.Main.execute(Main.java:75)
        at org.sonarsource.scanner.cli.Main.main(Main.java:61)

23:49:15.896 INFO: 3/4 files analyzed, current file: svg2pdf.src.js
23:49:18.811 INFO: Sensor SonarJS [javascript] (done) | time=3403095ms

Can you show full log? (for me to understand the sequence of events)
If will be also helpful if you could share content if this file.
In the meantime you can exclude this file.

Hi Elena,

I renamed the file to “*.txt” in order to allow upload. This file is from an external library

jspdf.src.js.txt (722.7 KB)

Full stack is:

**2019-08-30 04:22:05** [INFO] 306/460 files analyzed, current file: scatexweb-base/src/main/webapp/resources/highcharts/lib/jspdf.src.js 
**2019-08-30 04:22:05** [ERROR] Unable to analyse file: file:///builds/auto/Sonar/PROD_P2/mod-web/frontend-packages/scatexweb-base/src/main/webapp/resources/highcharts/lib/jspdf.src.js 
**2019-08-30 04:22:05** java.lang.ClassCastException: org.sonar.javascript.tree.impl.expression.IdentifierTreeImpl cannot be cast to org.sonar.plugins.javascript.api.tree.expression.LiteralTree 
**2019-08-30 04:22:05**    at org.sonar.javascript.checks.DeadStoreCheck.isBasicValue(DeadStoreCheck.java:177) 
**2019-08-30 04:22:05**    at org.sonar.javascript.checks.DeadStoreCheck.initializedToBasicValue(DeadStoreCheck.java:165) 
**2019-08-30 04:22:05**    at org.sonar.javascript.checks.DeadStoreCheck.checkUsage(DeadStoreCheck.java:148) 
**2019-08-30 04:22:05**    at org.sonar.javascript.checks.DeadStoreCheck.checkCFG(DeadStoreCheck.java:125) 
**2019-08-30 04:22:05**    at org.sonar.javascript.checks.DeadStoreCheck.checkFunction(DeadStoreCheck.java:100) 
**2019-08-30 04:22:05**    at org.sonar.javascript.checks.DeadStoreCheck.visitFunctionExpression(DeadStoreCheck.java:73) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.expression.FunctionExpressionTreeImpl.accept(FunctionExpressionTreeImpl.java:151) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitInitializedBindingElement(DoubleDispatchVisitor.java:410) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.declaration.InitializedBindingElementTreeImpl.accept(InitializedBindingElementTreeImpl.java:74) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitVariableDeclaration(DoubleDispatchVisitor.java:266) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.statement.VariableDeclarationTreeImpl.accept(VariableDeclarationTreeImpl.java:76) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitVariableStatement(DoubleDispatchVisitor.java:262) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.statement.VariableStatementTreeImpl.accept(VariableStatementTreeImpl.java:65) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitBlock(DoubleDispatchVisitor.java:306) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.statement.BlockTreeImpl.accept(BlockTreeImpl.java:83) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitFunctionExpression(DoubleDispatchVisitor.java:486) 
**2019-08-30 04:22:05**    at org.sonar.javascript.checks.DeadStoreCheck.visitFunctionExpression(DeadStoreCheck.java:74) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.expression.FunctionExpressionTreeImpl.accept(FunctionExpressionTreeImpl.java:151) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitParenthesisedExpression(DoubleDispatchVisitor.java:470) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.expression.ParenthesisedExpressionTreeImpl.accept(ParenthesisedExpressionTreeImpl.java:80) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitCallExpression(DoubleDispatchVisitor.java:454) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.expression.CallExpressionTreeImpl.accept(CallExpressionTreeImpl.java:68) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitExpressionStatement(DoubleDispatchVisitor.java:318) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.statement.ExpressionStatementTreeImpl.accept(ExpressionStatementTreeImpl.java:66) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitBlock(DoubleDispatchVisitor.java:306) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.statement.BlockTreeImpl.accept(BlockTreeImpl.java:83) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitFunctionExpression(DoubleDispatchVisitor.java:486) 
**2019-08-30 04:22:05**    at org.sonar.javascript.checks.DeadStoreCheck.visitFunctionExpression(DeadStoreCheck.java:74) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.expression.FunctionExpressionTreeImpl.accept(FunctionExpressionTreeImpl.java:151) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitParenthesisedExpression(DoubleDispatchVisitor.java:470) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.expression.ParenthesisedExpressionTreeImpl.accept(ParenthesisedExpressionTreeImpl.java:80) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitArgumentList(DoubleDispatchVisitor.java:298) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.expression.ArgumentListTreeImpl.accept(ArgumentListTreeImpl.java:78) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitCallExpression(DoubleDispatchVisitor.java:454) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.expression.CallExpressionTreeImpl.accept(CallExpressionTreeImpl.java:68) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitParenthesisedExpression(DoubleDispatchVisitor.java:470) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.expression.ParenthesisedExpressionTreeImpl.accept(ParenthesisedExpressionTreeImpl.java:80) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitExpressionStatement(DoubleDispatchVisitor.java:318) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.statement.ExpressionStatementTreeImpl.accept(ExpressionStatementTreeImpl.java:66) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitModule(DoubleDispatchVisitor.java:206) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.declaration.ModuleTreeImpl.accept(ModuleTreeImpl.java:56) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanChildren(DoubleDispatchVisitor.java:192) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.visitScript(DoubleDispatchVisitor.java:202) 
**2019-08-30 04:22:05**    at org.sonar.javascript.tree.impl.declaration.ScriptTreeImpl.accept(ScriptTreeImpl.java:74) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scan(DoubleDispatchVisitor.java:180) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitor.scanTree(DoubleDispatchVisitor.java:175) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.api.visitors.DoubleDispatchVisitorCheck.scanFile(DoubleDispatchVisitorCheck.java:34) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.JavaScriptSensor.scanFile(JavaScriptSensor.java:238) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.JavaScriptSensor.analyse(JavaScriptSensor.java:181) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.JavaScriptSensor.analyseFiles(JavaScriptSensor.java:151) 
**2019-08-30 04:22:05**    at org.sonar.plugins.javascript.JavaScriptSensor.execute(JavaScriptSensor.java:338) 
**2019-08-30 04:22:05**    at org.sonar.scanner.sensor.AbstractSensorWrapper.analyse(AbstractSensorWrapper.java:48) 
**2019-08-30 04:22:05**    at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:85) 
**2019-08-30 04:22:05**    at org.sonar.scanner.sensor.ModuleSensorsExecutor.lambda$execute$1(ModuleSensorsExecutor.java:59) 
**2019-08-30 04:22:05**    at org.sonar.scanner.sensor.ModuleSensorsExecutor.withModuleStrategy(ModuleSensorsExecutor.java:77) 
**2019-08-30 04:22:05**    at org.sonar.scanner.sensor.ModuleSensorsExecutor.execute(ModuleSensorsExecutor.java:59) 
**2019-08-30 04:22:05**    at org.sonar.scanner.scan.ModuleScanContainer.doAfterStart(ModuleScanContainer.java:82) 
**2019-08-30 04:22:05**    at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136) 
**2019-08-30 04:22:05**    at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122) 
**2019-08-30 04:22:05**    at org.sonar.scanner.scan.ProjectScanContainer.scan(ProjectScanContainer.java:400) 
**2019-08-30 04:22:05**    at org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:395) 
**2019-08-30 04:22:05**    at org.sonar.scanner.scan.ProjectScanContainer.scanRecursively(ProjectScanContainer.java:392) 
**2019-08-30 04:22:05**    at org.sonar.scanner.scan.ProjectScanContainer.doAfterStart(ProjectScanContainer.java:358) 
**2019-08-30 04:22:05**    at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136) 
**2019-08-30 04:22:05**    at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122) 
**2019-08-30 04:22:05**    at org.sonar.scanner.bootstrap.GlobalContainer.doAfterStart(GlobalContainer.java:141) 
**2019-08-30 04:22:05**    at org.sonar.core.platform.ComponentContainer.startComponents(ComponentContainer.java:136) 
**2019-08-30 04:22:05**    at org.sonar.core.platform.ComponentContainer.execute(ComponentContainer.java:122) 
**2019-08-30 04:22:05**    at org.sonar.batch.bootstrapper.Batch.doExecute(Batch.java:73) 
**2019-08-30 04:22:05**    at org.sonar.batch.bootstrapper.Batch.execute(Batch.java:67) 
**2019-08-30 04:22:05**    at org.sonarsource.scanner.api.internal.batch.BatchIsolatedLauncher.execute(BatchIsolatedLauncher.java:46) 
**2019-08-30 04:22:05**    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
**2019-08-30 04:22:05**    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
**2019-08-30 04:22:05**    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
**2019-08-30 04:22:05**    at java.lang.reflect.Method.invoke(Method.java:498) 
**2019-08-30 04:22:05**    at org.sonarsource.scanner.api.internal.IsolatedLauncherProxy.invoke(IsolatedLauncherProxy.java:60) 
**2019-08-30 04:22:05**    at com.sun.proxy.$Proxy16.execute(Unknown Source) 
**2019-08-30 04:22:05**    at org.sonarsource.scanner.api.EmbeddedScanner.doExecute(EmbeddedScanner.java:185) 
**2019-08-30 04:22:05**    at org.sonarsource.scanner.api.EmbeddedScanner.execute(EmbeddedScanner.java:137) 
**2019-08-30 04:22:05**    at org.sonarsource.scanner.maven.bootstrap.ScannerBootstrapper.execute(ScannerBootstrapper.java:65) 
**2019-08-30 04:22:05**    at org.sonarsource.scanner.maven.SonarQubeMojo.execute(SonarQubeMojo.java:104) 
**2019-08-30 04:22:05**    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101) 
**2019-08-30 04:22:05**    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:209) 
**2019-08-30 04:22:05**    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 
**2019-08-30 04:22:05**    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 
**2019-08-30 04:22:05**    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84) 
**2019-08-30 04:22:05**    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59) 
**2019-08-30 04:22:05**    at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183) 
**2019-08-30 04:22:05**    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) 
**2019-08-30 04:22:05**    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320) 
**2019-08-30 04:22:05**    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156) 
**2019-08-30 04:22:05**    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:537) 
**2019-08-30 04:22:05**    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196) 
**2019-08-30 04:22:05**    at org.apache.maven.cli.MavenCli.main(MavenCli.java:141) 
**2019-08-30 04:22:05**    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
**2019-08-30 04:22:05**    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
**2019-08-30 04:22:05**    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
**2019-08-30 04:22:05**    at java.lang.reflect.Method.invoke(Method.java:498) 
**2019-08-30 04:22:05**    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290) 
**2019-08-30 04:22:05**    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230) 
**2019-08-30 04:22:05**    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409) 
**2019-08-30 04:22:05**    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352) 
**2019-08-30 04:22:05** 
**2019-08-30 04:22:15** [INFO] 310/460 files analyzed, current file: scatexweb-base/src/main/webapp/resources/highcharts/modules/annotations-advanced.src.js

Hi,

Do you have news regarding this issue?

Thank you

Hi,

Indeed it’s a bug in our analyzer, I created a ticket to fix it.

And btw you are not supposed to analyze external libs, exclude them using sonar.exclusions.

Hi Elena,

Thank you for your feedback