1

ビルド後のアクションである Jenkins プラグインを作成しています。プラグインがジョブ設定ページの「ルート POM」フィールドの値を読み取るようにしたい。hudson.model.AbstractBuildの Javadoc を調べて、getBuildVariables()、getEnvironment() などを試しましたが、関連するものは何もありません。

最後の手段として、ユーザーにルート pom を要求するようにプラグインを構成することもできると思いますが、問題は、管理者が、ユーザー側で何もしなくてもビルドごとに自動的にデプロイできるプラグインを必要としていることです。

4

1 に答える 1

0

プラグインに別のプラグイン (Maven プラグイン) の構成を読み取らせたいということですか? もしそうなら、私はあなたが次のようなものを使うべきだと信じています

Jenkins.getInstance().getDescriptor(RequiredDesc.class);

何をしようとしているのかによって、必要なクラスは hudson/maven/Maven3Builder かもしれません。

討論

アップデート

私は間違っていた。これは私にとってはうまくいくようです:

    if (build instanceof hudson.maven.MavenModuleSetBuild) {
        try {
            hudson.maven.MavenModuleSetBuild b = (hudson.maven.MavenModuleSetBuild) build;
            hudson.EnvVars envVars = b.getEnvironment(listener);
            String rootPOM = b.getProject().getRootPOM(envVars);
            listener.getLogger().println("rootPOM: " + rootPOM);
        } catch (Exception e) {
            listener.getLogger().println("ERROR: " + e.getMessage());
        }
    }
于 2013-08-20T05:41:52.213 に答える