如何使用gradle'api'依赖

时间:2018-12-11 14:11:14

标签: java gradle

我尝试在项目中使用'api'依赖关键字,但出现此错误,提示它找不到方法api()

我在一个新项目上尝试过。这是build.gradle文件:

Could not find method api() for arguments [{group=com.google.guava, name=guava, version=27.0.1-jre}] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler

我正在使用gradle V4.9。 当我运行gradle build时,我得到了:

{{1}}

如果我将“ api”替换为“ implementation”,则一切正常

我在这里想念什么? 有什么需要做的设置吗?

1 个答案:

答案 0 :(得分:2)

api配置来自java-library插件,在您的构建脚本中,您刚刚应用了java插件。参见https://docs.gradle.org/current/userguide/java_library_plugin.html

  

标准Java插件和Java库插件之间的主要区别在于,后者引入了向消费者公开的API的概念。库是一个Java组件,打算由其他组件使用。在多项目构建中,这是一个非常常见的用例,但在您具有外部依赖关系时也是如此。

只需应用java-library插件(扩展了java插件),它便会起作用:

plugins {
    id 'java-library'
}