我尝试将本地.jar文件依赖项添加到构建中。gradle文件:

apply plugin: 'java'

sourceSets {
    main {
        java {
            srcDir 'src/model'
        }
    }
}

dependencies {
    runtime files('libs/mnist-tools.jar', 'libs/gson-2.2.4.jar')
    runtime fileTree(dir: 'libs', include: '*.jar')
} 

您可以看到,我将.jar文件添加到这里的referencedLibraries文件夹:https://github.com/WalnutiQ/wAlnut/tree/version-2.3.1/referencedLibraries

但问题是,当我在命令行上运行命令:gradle build时,我得到以下错误:

error: package com.google.gson does not exist
import com.google.gson.Gson;

这是我的全部回购:https://github.com/WalnutiQ/wAlnut/tree/version-2.3.1


当前回答

根据文档,为本地jar依赖项使用相对路径,如下所示。

Groovy的语法:

dependencies {
    implementation files('libs/something_local.jar')
}

Kotlin 语法:

dependencies {
    implementation(files("libs/something_local.jar"))
}

其他回答

如果您正在使用持续集成,请小心,您必须将库添加到构建服务器上的相同路径中。

出于这个原因,我宁愿将jar添加到本地存储库,当然,在构建服务器上也做同样的事情。

如果您使用的是gradle 4.10或更新版本:

implementation fileTree(dir: 'libs', includes: ['*.jar'])

Goto File -> Project Structure -> Modules -> app -> Dependencies Tab ->单击+(按钮)->选择File Dependency ->选择lib文件夹中的jar文件

该步骤将自动将您的依赖项添加到grade

非常简单的

您还可以这样做,这将包括本地存储库中的所有jar。这样就不必每次都指定它。

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

对我来说有效的解决方案是在构建中使用fileTree。gradle文件。 将需要添加为依赖项的.jar保存在libs文件夹中。在build.gradle的依赖块中给出以下代码:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
}