簡體   English   中英

Gradle 在編譯任務中使用 jar-with-dependencies

[英]Gradle to use a jar-with-dependencies in compile task

我們有一個使用“jrs-rest-java-client”的項目,版本:“6.3.1”

我們用來獲取 jar 的站點自 9 月以來就出現了證書問題。 https://jaspersoft.artifactoryonline.com

然后我們不得不從另一個站點獲取 jar。 https://jaspersoft.jfrog.io/

問題是缺少依賴要求,但如果我們使用具有“-jar-with-dependencies”的 jar,它就可以工作。 我嘗試在本地下載 jar 並將.gradle 更改為使用本地版本。

我更喜歡讓構建直接獲取該版本,而無需先下載。

我們如何指定使用什么 jar?

dependencies {
compile fileTree(dir: 'lib',
    includes: [
        'ojdbc8.jar',
     ])
    //compile group: 'com.jaspersoft', name: 'jrs-rest-java-client', version: '6.3.1'
    compile group: 'com.jaspersoft', name: 'jrs-rest-java-client', version: '6.3.1', USETHISONE: 'jar-with-dependencies'
    //compile files("${buildDir}/jrs-rest-java-client-6.3.1-jar-with-dependencies.jar")
}

我現在已經按照建議嘗試了;

repositories {
    mavenCentral()
    // to handle broked jasper reports dependencies
    maven {
        url 'http://jasperreports.sourceforge.net/maven2'
        url 'https://jaspersoft.jfrog.io/jaspersoft/third-party-ce-artifacts/'
        url "https://jaspersoft.jfrog.io/jaspersoft/jaspersoft-clients-releases"
    }
}

dependencies {
    implementation project(':common:project-common-properties')
    implementation project(':common:project-common-mail')

    implementation fileTree(dir: 'lib', includes: [
        'ojdbc8.jar'
     ])
    implementation group: 'com.jaspersoft', name: 'jrs-rest-java-client', version: '6.3.1', classifier: 'jar-with-dependencies'
}

我在構建時仍然遇到錯誤......

FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all files for configuration ':services:notificationService:compileClasspath'.
> Could not find com.jaspersoft.jasperserver:jasperserver-dto:6.3.0.
  Required by:
      project :services:notificationService > com.jaspersoft:jrs-rest-java-client:6.3.1

如果使用 jrs-rest-java-client-6.3.1-jar-with-dependencies.jar,則不需要該庫。

謝謝大家,

解決方案是,如果視頻(謝謝:)添加了一個新網址:

 url "https://jaspersoft.jfrog.io/jaspersoft/jrs-ce-releases"

jfrog repo中,它向您展示了如何執行此操作:

compile(group: 'com.jaspersoft', name: 'jrs-rest-java-client', version: '6.3.1', classifier: 'jar-with-dependencies')

添加 gradle 的倉庫:

repositories {
    jcenter {
        name "jaspersoft-releases"
        url "https://jaspersoft.jfrog.io/jaspersoft/jaspersoft-clients-releases"
    }
}

我建議compile切換到implementation並使用簡寫來聲明依賴項:

implementation "com.jaspersoft:jrs-rest-java-client:6.3.1:jar-with-dependencies"

給一個人一條魚,你就喂他一天。 教他如何釣魚,你養他一輩子。

我決定在 jfrog 上記錄我如何為您需要的工件找到合適的存儲庫的短片:

在此處輸入圖像描述

首先,您需要在 build.gradle 文件中添加存儲庫。 添加以下存儲庫。

repositories {
        mavenCentral()
        maven {
            url "https://jaspersoft.jfrog.io/jaspersoft/jaspersoft-clients-releases"
        }
    }

有關更多詳細信息,請參閱 go 到以下鏈接並單擊鏈接“jaspersoft-clients-releases”。 向下滾動一點,您將能夠看到要添加的存儲庫。 默認情況下,它提供 Maven,您只需復制 url 並粘貼到 build.gradle 的存儲庫部分。

https://jaspersoft.jfrog.io/jaspersoft/webapp/#/home

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM