Language of file 'DAL_DB2.vb' can not be decided as the file matches patterns of 2 languages

I am using the AzureDevOps SonarQube plugin in a Build. The plug in adds 2 tasks to the build process.
The first is “Prepare the SonarQube Analysis” , and that works.

The second task is “Complete the SonarQube Analysis” That step is failing with the following:

2020-03-23T19:18:07.4223876Z INFO: Total time: 6.954s

**2020-03-23T19:18:07.6519972Z ##[error]ERROR: Error during SonarQube Scanner execution**

**2020-03-23T19:18:07.6526741Z ##[error]ERROR: Language of file 'DAL_DB2.vb' can not be decided as the file matches patterns of both sonar.lang.patterns.vb : **/*.vb,**/*.bas,**/*.frm,**/*.ctl,**/*.vb,**/*.bas,**/*.frm,**/*.ctl and sonar.lang.patterns.vbnet : **/*.vb**

**2020-03-23T19:18:07.6527146Z ##[error]ERROR:**

**2020-03-23T19:18:07.6527392Z ##[error]ERROR: Re-run SonarQube Scanner using the -X switch to enable full debug logging.**

I asked a coworker who has a lot more experience with SonarQube and he said that they had a similar issue and they used:
-Dsonar.language=java
Apparently we are on an older version of SonarQube that still supports sonar.language.
Version 6.7.5 (build 38563)

So I guess I could try his suggestion, but in other articles I have found that property is being deprecated. What would be my alternative.

At this point I am also asking the Development teams if anyone is still writing and apps in VB6. If they are not I can remove the VB6 scanner and issue should go away.

Hi,

Your problem is that two different languages are claiming the same file extension. That claim is made at the global level, and without being overridden, trickles down to the project level.

Your solution here is to edit at the project level the extension list of the language you don’t want claiming those files to something like .foo. [dusts hands] Conflict solved.

 
:smile:
Ann