当前位置: 首页 > 知识库问答 >
问题:

Android依赖项设置为compileonly/provided,不支持

凤高翰
2023-03-14

我正在使用com.android.tools.build:Gradle:3.1.1和最新的Gradle版本(https://services.Gradle.org/distributions-snapshots/gradle-4.8-20180417000132+0000-all.zip)。

当我使用compileOnly依赖项时,其中有些不能编译,有些会编译。例如。

compileOnly "com.android.support:support-v4:27.1.1"
compileOnly "com.facebook.stetho:stetho:1.5.0"
Android dependency 'com.facebook.stetho:stetho:1.5.0' is set to compileOnly/provided which is not supported

我的印象比任何依赖项都只能编译。没有其他指示(https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html#new_configurations)。这两个库都具有传递依赖关系。

任何帮助都将不胜感激。

共有1个答案

洪宏硕
2023-03-14

作为一个实验,我创建了一个新的Android Studio 3.1.1项目。然后,我将lib模块作为普通Java库模块添加到它中。我可以将compileOnly项目(“:lib”)添加到app模块中,并对其进行编译。我将lib模块更改为具有最小清单的Android库模块(apply plugin:'com.Android.library'),现在compileonly项目(“:lib”)会得到您所做的错误:“Android dependency'project:lib'被设置为compileonly/provided,不受支持”。

由于lib模块没有其他重大变化,所以compileOnly限制是针对Android库模块的。

我的猜测是,不清楚“只编译”对于清单条目、资源、资产等意味着什么。所以,他们正式放弃了。

我提出了一个问题,要求提供这一限制的文件。我对文件的要求通常被置若罔闻。

 类似资料:
  • 对于一个项目,我有这样类型的结构: 这很好,但前提是jar已经由上一个构建生成,这意味着我必须启动两次才能使其工作。 我认为问题在于,与常规依赖项(例如)不同,在不请求构建子项目的情况下计算文件树依赖项,并且在第一次构建时,没有向类路径添加jar文件。 我尝试了,但是没有成功,因为它是在求值之后执行的。 我不能将lib切换到Java插件,因为它是特定于Android的代码,而且我需要为其他项目构建

  • 问题内容: 我正在开发一个Portlet,可以在其中对SQL Server数据库进行Hibernate访问。我为此设置了 maven依赖项 ,并尝试以与MySql相同的方式找出SQL Server连接器。 如果我搜索SQL Server连接器,我的Google搜索仍然仅提供Mysql。正确的 maven依赖项 值是多少? 问题答案: 从Olaf提供的链接下载驱动程序JAR,并将其添加到本地Mave

  • 我如何在一个Android Gradle项目中设置模块的依赖关系,在这个项目中,模块之间相互依赖,这样我就可以一次部署所有模块的新快照或发布版本的构建? 该项目的结构如下: 项目配置文件如下,仅显示相关部分(根据我的判断): 设置。分级: lib-help/gradle.properties: lib-help/build.gradle: 当我运行时,所有内容都编译得很好,并且上载文件被推送到正确

  • 问题内容: 我看到了类似的问题,但未找到可接受的答案。问题-我有一些小功能我自己的android库。我的库使用其他库-fe Hawk(无sql数据库)。我的图书馆gradle文件: 图书馆工作正常。如果我将它用作另一个项目中的项目-它也可以工作。但是当我生成文件(带有-> )并包含到单独的项目中时-失败。项目仅查看我的图书馆的班级。Hawk com.orhanobut.hawk软件包和off其他软

  • Gradle 项目可以通过多项目配置依赖于其它 Gradle 项目。通常使用多项目配置会将所有库项目(如 lib1、lib2)添加到指定的根项目(如 libraries)。例如,给定以下项目结构: MyProject/ + app/ + libraries/ + lib1/ + lib2/ 我们可以找出3个项目。Gradle 将会按照以下名字进行映射: :app :librar

  • 我有一个目前在AndroidX上的项目,我正在尝试实施一个介绍活动,向用户展示如何使用该应用程序。这使用了我放在libs文件夹中的v4支持库包,以及构建。渐变。 以下是我在构建中使用的依赖项。格拉德尔: 更新了WelcomeActivity的代码。显示错误的java: 显示的错误包括: