【问题标题】:Unable to resolve library using Gradle. Resolved using Grape无法使用 Gradle 解析库。用葡萄解决
【发布时间】:2018-01-10 15:39:17
【问题描述】:

我对 Groovy 还很陌生,我正在尝试用 Gradle 来学习。如果我通过 Grapes 导入 org.jvnet.hudson.plugins ,它可以完美运行并且依赖关系得到解决。但是,如果我尝试使用 Gradle 检索依赖项,则依赖项不会得到解决。

org.eclipse.hudson:hudson-core:3.2.1 包可与 Gradle 和 Grape 一起使用。

无法使用 Gradle 解决的依赖项

compile 'org.jvnet.hudson.plugins:checkstyle:3.42'

使用 Grape 解决的依赖项

@Grab('org.jvnet.hudson.plugins:checkstyle:3.42')

使用 Gradle 解决的依赖项

compile 'org.eclipse.hudson:hudson-core:3.2.1'

Gradle 构建期间出错

line 3, column 1.
   import hudson.plugins.checkstyle.CheckStyleResultAction;
   ^

build.gradle

apply plugin: 'groovy'

repositories {
    mavenCentral()

    maven {
        url "http://repo.jenkins-ci.org/releases/"
    }
}

configurations {
    ivy
}

sourceSets {
    main {
        groovy {
            srcDirs = ['src/']
        }
    }

    test {
        groovy {
            srcDirs = ['test/']
        }
    }
}

dependencies {

    compile 'org.codehaus.groovy:groovy-all:2.4.11'

    compile "org.apache.ivy:ivy:2.4.0"
    ivy "org.apache.ivy:ivy:2.3.0"

    // Works
    compile 'org.eclipse.hudson:hudson-core:3.2.1'

    // Does not work
    compile 'org.jvnet.hudson.plugins:checkstyle:3.42'
}


tasks.withType(GroovyCompile) {
    groovyClasspath += configurations.ivy
}

【问题讨论】:

    标签: intellij-idea gradle groovy grape


    【解决方案1】:

    您可能实际上并没有下载您认为的 jar。看起来从 org.jvnet.hudson.plugins:checkstyle:3.42 依赖项返回的默认工件实际上是一个名为 checkstyle-3.42.hpi 的文件。

    要获取包含类的 jar,请使用:

    compile group: 'org.jvnet.hudson.plugins', name: 'checkstyle', version:'3.42', ext: 'jar'
    

    然后将在您的类路径中找到该类(您将继续查找下一个丢失的依赖项)。

    【讨论】:

    • 编译组:'org.jvnet.hudson.plugins',名称:'checkstyle',版本:'3.42',分机:'jar'工作。关键是“ext:jar”。 hpi 代表什么,为什么它回退到使用 hpi 而不是 jar?顺便说一句,你为什么使用 ivy 而不是编译?谢谢:)
    • 常春藤是一个错误,我已将其改回编译。不知道hpi文件是什么,以前没遇到过。
    猜你喜欢
    • 1970-01-01
    • 2019-04-16
    • 2013-12-30
    • 2011-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-30
    • 1970-01-01
    相关资源
    最近更新 更多