没有这样的方法com.atlassian.jira.rest.client.internal.json.WatchersJsonParserBuilder.createWatchersParser

时间:2015-08-17 11:22:17

标签: java json jira jira-rest-java-api

我正在开发一个应用程序,我正在尝试集成JIRA功能。当我尝试运行用于创建任务的代码时,我收到错误。我不知道我做错了什么。你能帮忙的话,我会很高兴。

另外,如何在本地运行的JIRA实例中创建项目。我在仪表板中看不到该选项。你能帮忙的话,我会很高兴。

错误日志:

java.lang.NoSuchMethodError: com.atlassian.jira.rest.client.internal.json.WatchersJsonParserBuilder.createWatchersParser()Lcom/atlassian/jira/rest/client/internal/json/JsonObjectParser;
    com.atlassian.jira.rest.client.internal.async.AsynchronousIssueRestClient.<init>(AsynchronousIssueRestClient.java:69)
    com.atlassian.jira.rest.client.internal.async.AsynchronousJiraRestClient.<init>(AsynchronousJiraRestClient.java:48)
    com.atlassian.jira.rest.client.internal.async.AsynchronousJiraRestClientFactory.create(AsynchronousJiraRestClientFactory.java:37)
    com.atlassian.jira.rest.client.internal.async.AsynchronousJiraRestClientFactory.createWithBasicHttpAuthentication(AsynchronousJiraRestClientFactory.java:42)
    com.journaldev.spring.JIRA.CreateMinimalTask.doTask(CreateMinimalTask.java:31)

代码:

// Also, what are the keys below, and where can I find documentation about it. 
 private static final String PROJECT_KEY = "TST";
    private static final long TASK_TYPE_ID = 3L;
    private static final long SUBTASK_TYPE_ID = 5L;
    private static final String SUMMARY = "summary";

    public void doTask() throws IOException {

        final JiraRestClient restClient = new AsynchronousJiraRestClientFactory().createWithBasicHttpAuthentication(
                serverUri, username, password);

        final IssueInputBuilder parentBuilder = new IssueInputBuilder(PROJECT_KEY, TASK_TYPE_ID, "parent");
        final IssueInput parentInput = parentBuilder.build();

        try {

            final IssueRestClient client = restClient.getIssueClient();
            final BasicIssue parent = client.createIssue(parentInput).claim();
            System.out.println("parent: " + parent);


            final IssueInputBuilder childBuilder = new IssueInputBuilder(PROJECT_KEY, SUBTASK_TYPE_ID, "child");
            childBuilder.setFieldValue("parent", ComplexIssueInputFieldValue.with("key", parent.getKey()));
            final BasicIssue child = client.createIssue(childBuilder.build()).claim();

            final Issue actual = client.getIssue(parent.getKey()).claim();

            for (final Subtask subtask : actual.getSubtasks()) {
                final Issue actualChild = client.getIssue(subtask.getIssueKey()).claim();
                final JSONObject json = (JSONObject) actualChild.getField("parent").getValue();
            }

            client.deleteIssue(parent.getKey(), true).claim();
        } finally {
            if (restClient != null) {
                restClient.close();
            }
        }

    }

任何帮助都会很好,因为我是JIRA的新手。

0 个答案:

没有答案