自写sonar 插件加载到sonar 服务中的展示信息
生活随笔
收集整理的這篇文章主要介紹了
自写sonar 插件加载到sonar 服务中的展示信息
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在sonar 服務頁面的administer->configuration頁面展示每一種語言插件的信息:
上圖對應的是自寫的語言(configfiles)ConfigFiles插件
上面的信息展示是通過plugin 擴展類中addExtensions(ConfigFilesLanguageProperties.getProperties()) 加載
public class ConfigFileScanPlugin implements Plugin {public static final String CHECK_SECURITY = "security";public static final String CHECK_BUG = "bug";public static final String REPOSITORY_KEY = "configfilerepo";public static final String REPOSITORY_NAME = "configFilePluginRepo";public static final String LANGUAGE_KEY = "java";public static final String LANGUAGE_NAME = "JProperties";public static final String FILE_SUFFIXES_DEFAULT_VALUE = ".properties,.ini,.conf";public static final String FILE_SUFFIXES_KEY = "sonar.java.file.suffixes";@Overridepublic void define(Context context) {System.out.println("load ConfigFileScanPlugin.");context.addExtensions(ConfigFileScanLanguage.class, ConfigFileScanProfileDefinition.class).addExtension(ConfigFileScanSensor.class).addExtension(ConfigFileScanRulesDefinition.class).addExtensions(ConfigFilesLanguageProperties.getProperties()); } }ConfigFilesLanguageProperties代碼:
import java.util.List;import org.sonar.api.config.PropertyDefinition; import org.sonar.api.resources.Qualifiers;import com.lingtian.sonar.plugin.ConfigFileScanPlugin;public class ConfigFilesLanguageProperties {private ConfigFilesLanguageProperties() {// only statics}public static List<PropertyDefinition> getProperties() {return asList(PropertyDefinition.builder(ConfigFileScanPlugin.LANGUAGE_KEY).defaultValue(ConfigFileScanPlugin.FILE_SUFFIXES_DEFAULT_VALUE).category("ConfigFiles").name("scan configFiles userMsg").description("configFiles without contain userMsg.").onQualifiers(Qualifiers.PROJECT).build());} }?
總結
以上是生活随笔為你收集整理的自写sonar 插件加载到sonar 服务中的展示信息的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: excel虚线分割线怎么去掉
- 下一篇: 运动改变大脑