What is the need of plugins in Jenkins (Sonarqube) On learning about integrating Sonarqube to CI/CD pipeline, I came across the Sonarqube Jenkins plugin which most of the online blogs recommends.

After configuring it, I realized that the working is the same as that of running the sonar-scanner through the command line using below command.

sonar-scanner.bat -D"sonar.projectKey=test" -D"sonar.sources=." -D"sonar.host.url=http://localhost:9000" -D"sonar.login=erwerwerwerwer"


Same is applicable for any tool, as most can be executed through command line.

So I am confused about,


  what's the advantage of using a plugin over just running the tools as
  windows batch command in Jenkins build step.?
Any CI/CD plugin can ultimately be scripted.  However, using plugins gives you better centralized control.  

Consider the following scenario: Your SonarQube server location has to move to a new location.  

If you are using a script like the example you provided above, you would need to manually update every script.  This process is error prone as you may miss a script or worse, type the wrong address.  Instead, if you are using a plugin you can update the server location once and be done.