【问题标题】:Displaying local file dependencies显示本地文件依赖项
【发布时间】:2015-04-16 09:36:06
【问题描述】:

我创建了一个小型测试构建文件来分析我刚刚发现的行为,但我不确定这是我的错误还是标准的 gradle 行为。

我刚刚开始将一个旧的 ant 项目迁移到 gradle。第一步是在本地复制所有 jar 文件并创建本地文件依赖项。 我试图检查依赖声明,但 gradle dependencies他们不会出现。

我创建了一个小的测试 gradle 脚本:

apply plugin: 'java'

repositories {
    jcenter()
}

dependencies {
    compile 'org.slf4j:slf4j-api:1.7.7'

    //compile fileTree('tmp_libs')
    compile files('tmp_libs/hsqldb/hsqldb_2.2.8.jar')

    testCompile 'junit:junit:4.12'
}

运行gradle dependencies 时,我可以看到 slf4j 依赖项,但看不到 hsqldb 依赖项。 我做错了什么,还是不显示本地文件依赖项只是正常的 gradle 行为?有没有其他方法可以检查依赖声明是否有效?

【问题讨论】:

    标签: java gradle dependencies


    【解决方案1】:

    看来gradle dependencies 将无法从本地添加的 jar 中检索依赖树信息。

    但是,如果您使用的是 IntelliJ IDEA 或 Ecplise,您将在分别使用 gradle ideagradle eclipse 构建后在构建路径中看到它们。

    查看依赖声明是否正常工作的另一种方法是通过 gradle 输出 类路径。你可以使用这样的任务:

    task printClasspath << {
      (configurations.runtime.asPath =~ /(?<jar>[^:]+)/).each {match, jar ->
        println jar
      }
    }
    

    当使用gradle printClasspath(或在以后的版本中简称为gradle pC)调用它时,此任务将在正则表达式的帮助下“漂亮地打印”类路径,它会查找以冒号分隔的所有条目。

    【讨论】:

      猜你喜欢
      • 2015-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-27
      • 1970-01-01
      • 2013-02-10
      • 2010-10-28
      相关资源
      最近更新 更多