2017-03-01 20 views
1

atlassian-sdk를 사용하여 Bitbucket 용 플러그인을 개발 중입니다. 이 오류를 발생시킵니다 코드 줄은"AOP 구성이 유효하지 않습니다"오류를 수정하는 방법?

"AOP configuration seems to be invalid: tried calling method [public 
abstract com.atlassian.bitbucket.scm.git.command.GitCommandFactory 
com.atlassian.bitbucket.scm.git.GitScm.getCommandFactory()] on target 
[[email protected]]; nested 
exception is java.lang.IllegalArgumentException: object is not an 
instance of declaring class" 

: 나는 GitCommandFactory를 사용하려고하면, 나는 아래의 오류로 실행

GitCommandFactory gitCommandFactory = gitScm.getCommandFactory(); 

내 수업 엿볼 생성자 :

@ComponentImport 
private final PullRequestService pullRequestService; 
@ComponentImport 
private final GitScm gitScm; 
@ComponentImport 
private final GitScmConfig gitScmConfig; 
@ComponentImport 
private final EventPublisher eventPublisher; 

@Autowired 
private ApplicationContext applicationContext; 


private Logger loggerLocal; 

@Autowired 
public SquashServlet(PullRequestService pullRequestService, GitScm gitScm, GitScmConfig gitScmConfig, EventPublisher eventPublisher) throws Exception{ 
    super(); 
    this.pullRequestService = pullRequestService; 
    this.gitScm = gitScm; 
    this.gitScmConfig = gitScmConfig; 
    this.eventPublisher = eventPublisher; 

    FileHandler handler = new FileHandler("BitBuckSquash.log",true); 
    this.loggerLocal = java.util.logging.Logger.getLogger("com.atlassian.kaushik.plugin.servlet"); 
    loggerLocal.addHandler(handler); 
} 

어떻게이 문제를 해결할 수 있습니까? 내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변

1

문제가 해결되었습니다. 호환되지 않는 종속성 때문이었습니다.

pom.xml에 내 bitbucket의 버전과 동일한 버전 번호를 추가해야만했습니다.

<dependency> 
     <groupId>com.atlassian.bitbucket.server</groupId> 
     <artifactId>bitbucket-git-api</artifactId> 
     <scope>provided</scope> 
     <version>${bitbucket.version}</version> 
    </dependency>