私はJava開発者ではありません。しかし、私はそれが大変ではないはずだと思いました。私は、postReceiveを起動し、特定のタグをチェックし、基本的なアクション(REST経由でコミットされたファイルの内容を公開する)を実行するBitbucket Server用の特定のプラグインを入れようとしています。以下の簡単なコード例は動作しません。RefService経由でリポジトリタグを取得する方法
public class ReleaseNotesHook implements AsyncPostReceiveRepositoryHook, RepositorySettingsValidator
{
private static final PageRequestImpl PAGE_REQUEST = new PageRequestImpl(0, 100);
private RefService refService;
public ReleaseNotesHook(RefService refService){
this.refService = refService;
}
public void postReceive(RepositoryHookContext context, Collection<RefChange> refChanges)
{
String url = context.getSettings().getString("url");
for (RefChange refCh : refChanges) {
boolean isAdd = (refCh.getType() == RefChangeType.ADD);
boolean isTag = (refCh.getRef().getId().contains("tags"));
if (isAdd && isTag) {
Repository repo = context.getRepository();
RepositoryTagsRequest tagRequest = new RepositoryTagsRequest.Builder(repo).build();
Page<Tag> tags = refService.getTags(tagRequest, PAGE_REQUEST);
performSomething(tags);
}
}
}
} //class
私はアトラス・デバッグを起動すると、それがプロジェクトの罰金を構築し、のBitbucket Serverを起動しますが、エラーとフックをプラグインに失敗:
[INFO] [talledLocalContainer] org.springframework.beans.factory.UnsatisfiedDependencyException :名前が 'com.atlassian.bitbucket.plugin.releasenotes.hook.ReleaseNotesHook'のBeanを作成中にエラーが発生しました:型[com.atlassian.bitbucket.repository.RefService]のインデックス0を持つコンストラクタ引数で表現されている満足度の低い依存関係:タイプ:[com.atlassian.bitbucket.repository.RefService] dependency:この依存関係のautowire候補となる少なくとも1つのbeanが必要です。依存関係の注釈:{};ネストされた例外はorg.springframework.beans.factory.NoSuchBeanDefinitionExceptionです:タイプ[com.atlassian.bitbucket.repository.RefService]の適格なBeanが依存関係に見つかりませんでした:この依存関係のautowire候補となる少なくとも1つのbeanが必要です。依存関係のアノテーション:{}このプラグインの
私の主なリソースは以下のとおりです。編集する必要がXMLファイルが
- https://developer.atlassian.com/blog/2015/01/beer-o-clock-stash-plugin-tutorial/
- https://developer.atlassian.com/static/javadoc/bitbucket-server/4.6.2/api/reference/com/atlassian/bitbucket/repository
- https://bitbucket.org/atlassian/stash-example-hook-protect-ref/commits/a38e6118b0b1ac1b9b73959e32325271d3d3937a?at=update-example-for-bitbucket-rebrand#chg-src/main/java/com/atlassian/bitbucket/server/repository/hook/ref/RefValidator.java