@ -42,8 +42,8 @@ public class SonarService {
@Value ( "${sonar.url}" )
String sonarUrl ;
@Value ( "${sonar.token}" )
String sonarToken ;
// @Value("${sonar.token}")
// String sonarToken;
@Value ( "${extract.path}" )
String extractProgramPath ;
@ -61,11 +61,10 @@ public class SonarService {
"-Dsonar.sourceEncoding=utf-8 " +
"-Dsonar.projectKey=" + param . getProjectKey ( ) + " " +
"-Dsonar.java.binaries=./ " +
"-Dsonar.login=" + sonarToken + " " +
"-Dsonar.projectBaseDir=" + param . getProjectPath ( ) ;
SystemUtil . ExecuteResp executeResp = SystemUtil . executeAndGetExitStatus ( command ) ;
log . info ( "java语言:command{},result:{}" , command , executeResp . getOutput ( ) ) ;
log . info ( "java语言:command{},result:{}" , command , executeResp . getOutput ( ) ) ;
} ) ;
concurrentHashMap . put ( Constant . PYTHON , param - > {
@ -73,60 +72,33 @@ public class SonarService {
"-Dsonar.host.url=" + sonarUrl + " " +
"-Dsonar.sourceEncoding=utf-8 " +
"-Dsonar.projectKey=" + param . getProjectKey ( ) + " " +
"-Dsonar.login=" + sonarToken + " " +
"-Dsonar.projectBaseDir=" + param . getProjectPath ( ) ;
SystemUtil . ExecuteResp executeResp = SystemUtil . executeAndGetExitStatus ( command ) ;
log . info ( "python语言:command{},result:{}" , command , executeResp . getOutput ( ) ) ;
log . info ( "python语言:command{},result:{}" , command , executeResp . getOutput ( ) ) ;
} ) ;
concurrentHashMap . put ( Constant . C , param - > {
String command = "cppcheck --xml --xml-version=2 --enable=all " + param . getProjectPath ( ) + " 2> " + param . getCppCheckReportPath ( ) +
"&& sonar-scanner " +
"-Dsonar.host.url=" + sonarUrl + " " +
"-Dsonar.sourceEncoding=utf-8 " +
"-Dsonar.login=" + sonarToken + " " +
"-Dsonar.projectKey=" + param . getProjectKey ( ) + " " +
"-Dsonar.cxx.cppcheck.reportPath=" + param . getCppCheckReportPath ( ) + " " +
"-Dsonar.projectBaseDir=" + param . getProjectPath ( ) ;
SystemUtil . ExecuteResp executeResp = SystemUtil . executeAndGetExitStatus ( command ) ;
log . info ( "c语言:command{},result:{}" , command , executeResp . getOutput ( ) ) ;
log . info ( "c语言:command{},result:{}" , command , executeResp . getOutput ( ) ) ;
} ) ;
concurrentHashMap . put ( Constant . CXX , param - > {
String command = "cppcheck --xml --xml-version=2 --enable=all " + param . getProjectPath ( ) + " 2> " + param . getCppCheckReportPath ( ) +
"&& sonar-scanner " +
"-Dsonar.host.url=" + sonarUrl + " " +
"-Dsonar.sourceEncoding=utf-8 " +
"-Dsonar.login=" + sonarToken + " " +
"-Dsonar.projectKey=" + param . getProjectKey ( ) + " " +
"-Dsonar.cxx.cppcheck.reportPath=" + param . getCppCheckReportPath ( ) + " " +
"-Dsonar.projectBaseDir=" + param . getProjectPath ( ) ;
SystemUtil . ExecuteResp executeResp = SystemUtil . executeAndGetExitStatus ( command ) ;
log . info ( "c++: command:{}, result:{}" , command , executeResp . getOutput ( ) ) ;
} ) ;
concurrentHashMap . put ( Constant . H , param - > {
String command = "sonar-scanner " +
"-Dsonar.host.url=" + sonarUrl + " " +
"-Dsonar.sourceEncoding=utf-8 " +
"-Dsonar.login=" + sonarToken + " " +
"-Dsonar.projectKey=" + param . getProjectKey ( ) + " " +
"-Dsonar.projectBaseDir=" + param . getProjectPath ( ) ;
SystemUtil . ExecuteResp executeResp = SystemUtil . executeAndGetExitStatus ( command ) ;
log . info ( "H语言 command: {},result:{}" , command , executeResp . getOutput ( ) ) ;
} ) ;
concurrentHashMap . put ( Constant . OTHER , param - > {
String command = "sonar-scanner " +
"-Dsonar.host.url=" + sonarUrl + " " +
"-Dsonar.sourceEncoding=utf-8 " +
"-Dsonar.projectKey=" + param . getProjectKey ( ) + " " +
"-Dsonar.login=" + sonarToken + " " +
"-Dsonar.projectBaseDir=" + param . getProjectPath ( ) ;
SystemUtil . ExecuteResp executeResp = SystemUtil . executeAndGetExitStatus ( command ) ;
log . info ( "Other语言 command:{},result:{}" , command , executeResp . getOutput ( ) ) ;
} ) ;
}
/ * *
@ -206,7 +178,7 @@ public class SonarService {
public void sonar ( String language , SonarScannerParam sonarScannerParam ) {
Consumer < SonarScannerParam > consumer = concurrentHashMap . get ( language . toLowerCase ( ) ) ;
if ( consumer ! = null ) {
log . info ( "语言:{},projectName:{},path:{}找到了consumer" , language , sonarScannerParam . getProjectKey ( ) , sonarScannerParam . getProjectPath ( ) ) ;
log . info ( "语言:{},projectName:{},path:{}找到了consumer" , language , sonarScannerParam . getProjectKey ( ) , sonarScannerParam . getProjectPath ( ) ) ;
consumer . accept ( sonarScannerParam ) ;
}
}
@ -218,7 +190,6 @@ public class SonarService {
"-Dsonar.sourceEncoding=utf-8 " +
"-Dsonar.projectKey=" + key + " " +
"-Dsonar.java.binaries=./ " +
"-Dsonar.login=" + sonarToken + " " +
"-Dsonar.projectBaseDir=" + projectPath ;
log . info ( "projectPath:{},key:{}, command: {}" , projectPath , key , command ) ;
SystemUtil . executeAndGetExitStatus ( command ) ;
@ -226,11 +197,10 @@ public class SonarService {
/ * *
* 是 否 是 支 持 的 语 言
*
* @param language
* @return
* /
public boolean supportLanguage ( String language ) {
public boolean supportLanguage ( String language ) {
return concurrentHashMap . containsKey ( language . toLowerCase ( ) ) ;
}