在SonarQube插件中使用HttpConnector

在SonarQube插件中使用HttpConnector,sonarqube,sonarqube5.6,Sonarqube,Sonarqube5.6,我正在尝试开发一个SonarQube(计算引擎)插件,我需要使用凭证(sonar.user//sonar.password),以便从插件本身调用web服务 我尝试在插件类中声明它们的使用,例如: @Override public void define(Plugin.Context context) { ... context.addExtensions(asList( PropertyDefinition.builder(SONAR_USER)

我正在尝试开发一个SonarQube(计算引擎)插件,我需要使用凭证(sonar.user//sonar.password),以便从插件本身调用web服务

我尝试在插件类中声明它们的使用,例如:

@Override
public void define(Plugin.Context context) {

    ...

    context.addExtensions(asList(
            PropertyDefinition.builder(SONAR_USER)
                    .name("Sonar user")
                    .description("SonarQube user")
                    .onQualifiers(Qualifiers.PROJECT)
                    .type(PropertyType.STRING)
                    .defaultValue("admin")
                    .build()
 ...
然后在钩子里:

 public class Hook implements PostProjectAnalysisTask {

    private final Server server;
    private final Settings settings;

    public Hook(Server server, Settings settings) {
        this.server = server;
        this.settings = settings;
    }

    @Override
    public void finished(ProjectAnalysis projectAnalysis) {
        final HttpConnector httpConnector =
                HttpConnector.newBuilder()
                  .url(server.getURL())
                  .credentials(                                    
                    settings.getString(CePlugin.SONAR_USER), // null
                    settings.getString(CePlugin.SONAR_PASSWORD) // null
                   ).build();
        final WsClient wsClient = WsClientFactories.getDefault().newClient(httpConnector);
    }
 }
但是当我在钩子中插入
设置
时,属性不可用


如何检索
sonar.user
sonar.password
,以便调用Web服务API?

不建议从计算引擎调用Web服务。ProjectAnalysis中缺少哪些信息?你能描述一下你的需求吗?嗨,这个插件是关于在分析后自动将一个项目重新定位到另一个质量关卡。因此,可以根据名称获取QG ID,并为项目选择QG。我使用QGs作为质量级别,如果一个项目通过了,它将被提升为更严格的QG,不建议使用Compute Engine调用web服务。ProjectAnalysis中缺少哪些信息?你能描述一下你的需求吗?嗨,这个插件是关于在分析后自动将一个项目重新定位到另一个质量关卡。因此,可以根据名称获取QG ID,并为项目选择QG。我使用QG作为质量等级,如果一个项目通过,它将被提升为更严格的QG