Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 无法创建JiraRestClient_Java_Jira_Jira Rest Api_Jira Rest Java Api - Fatal编程技术网

Java 无法创建JiraRestClient

Java 无法创建JiraRestClient,java,jira,jira-rest-api,jira-rest-java-api,Java,Jira,Jira Rest Api,Jira Rest Java Api,我正在尝试使用基本身份验证创建一个JiraRestClient JiraRestClientFactory factory = new AsynchronousJiraRestClientFactory(); URI jiraServerUri = getJiraUri(); JiraRestClient restClient = factory .createWithBasicHttpAuthentication(jiraServerUri, USERNAME, PASSWORD); 但

我正在尝试使用基本身份验证创建一个JiraRestClient

JiraRestClientFactory factory = new AsynchronousJiraRestClientFactory();
URI jiraServerUri = getJiraUri();
JiraRestClient restClient =  factory
 .createWithBasicHttpAuthentication(jiraServerUri, USERNAME, PASSWORD);
但是,我得到以下例外情况:

Exception in thread "main" java.lang.NoSuchMethodError: com.atlassian.fugue.Option.fold(Lcom/google/common/base/Supplier;Lcom/google/common/base/Function;)Ljava/lang/Object;
    at com.atlassian.httpclient.apache.httpcomponents.proxy.ProxyConfigFactory.getProxyHost(ProxyConfigFactory.java:16)
    at com.atlassian.httpclient.apache.httpcomponents.ApacheAsyncHttpClient.<init>(ApacheAsyncHttpClient.java:211)
    at com.atlassian.httpclient.apache.httpcomponents.ApacheAsyncHttpClient.<init>(ApacheAsyncHttpClient.java:123)
    at com.atlassian.httpclient.apache.httpcomponents.DefaultHttpClientFactory.doCreate(DefaultHttpClientFactory.java:68)
    at com.atlassian.httpclient.apache.httpcomponents.DefaultHttpClientFactory.create(DefaultHttpClientFactory.java:35)
    at com.atlassian.jira.rest.client.internal.async.AsynchronousHttpClientFactory.createClient(AsynchronousHttpClientFactory.java:63)
    at com.atlassian.jira.rest.client.internal.async.AsynchronousJiraRestClientFactory.create(AsynchronousJiraRestClientFactory.java:35)
    at com.atlassian.jira.rest.client.internal.async.AsynchronousJiraRestClientFactory.createWithBasicHttpAuthentication(AsynchronousJiraRestClientFactory.java:42)
    at com.jira.JiraClient.getJiraRestClient(JiraClient.java:37)
    at com.jira.JiraClient.getIssue(JiraClient.java:25)
    at com.jira.JiraClient.main(JiraClient.java:20)
似乎缺少一些运行时依赖项。但不确定是哪一个

以下是我的pom中的片段:

<dependencies>
    <dependency>
        <groupId>com.atlassian.jira</groupId>
        <artifactId>jira-rest-java-client-core</artifactId>
        <version>4.0.0</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>com.atlassian.fugue</groupId>
        <artifactId>fugue</artifactId>
        <version>3.0.0-m007</version>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.6.4</version>
    </dependency>
</dependencies>
<repositories>
    <repository>
        <id>atlassian-public</id>
        <url>https://packages.atlassian.com/maven/repository/public</url>
    </repository>
</repositories>

我在这里遗漏了什么?

这不是因为缺少一个库。这是由于pom中fugue和jira rest java客户端核心之间的版本不匹配造成的

简单地看一下,Fugue期望JDK接口,而rest库则提供guava接口


尝试修正版本或根本不指定赋格。它应该是一个可传递的依赖项

与JRJC 4.0.0兼容的赋格版本是2.6.1

<dependency>
    <groupId>com.atlassian.fugue</groupId>
    <artifactId>fugue</artifactId>
    <version>2.6.1</version>
</dependency>

在5.2.0版中,我遇到了一个类似的错误,我能够使用下面的依赖项来修复它,而不是直接使用jira rest java客户机核心

<dependency>
    <groupId>com.atlassian.jira</groupId>
    <artifactId>jira-rest-java-client-app</artifactId>
    <version>5.2.0</version>
</dependency>

起初我没有赋格曲就试过了,但没有错。然后我添加了依赖项。我将验证版本。但是我认为Guava接口是对JDK接口的扩展,传递它们应该不是问题。