为什么我必须为同一依赖项指定“运行时”和“编译”?

2024-03-13

我依赖于编译和运行应用程序所需的一些工件。

根据 Gradle 文档,运行时配置extends编译配置,因此肯定使用添加依赖项runtime暗示着一种隐含的compile依赖性?

至少这是我的假设,但它不起作用。当仅依赖于使用的工件时runtime,我的项目不再编译。我确实必须:

compile 'oauth.signpost:signpost-core:1.2.1.2'
runtime 'oauth.signpost:signpost-core:1.2.1.2'

让应用程序都可以编译and在运行时查看路标类。

我错过了什么吗?这看起来不太对劲...


几乎是对的。事实上,运行时配置extends编译配置(docs http://gradle.org/docs/current/userguide/java_plugin.html#sec:java_plugin_and_dependency_management)。这意味着,添加到的任何依赖项compile配置可在runtime配置 (docs http://gradle.org/docs/current/dsl/org.gradle.api.artifacts.Configuration.html#org.gradle.api.artifacts.Configuration:extendsFrom).

compile 'oauth.signpost:signpost-core:1.2.1.2'将足以在运行时和编译中获得此工件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么我必须为同一依赖项指定“运行时”和“编译”? 的相关文章

随机推荐