compileOnly
是 Gradle 中的一个配置,它表示该依赖项仅在编译时可用,而在运行时不会包含在最终的 APK 中。这对于一些库来说是有用的,因为它们可能只提供了编译时所需的类或资源,而不需要在运行时使用。
然而,compileOnly
并不适用于资源文件。资源文件(如 XML、图片等)在编译时和运行时都需要,因此它们应该被包含在最终的 APK 中。如果你将资源文件设置为 compileOnly
,那么在运行时,应用程序将无法访问这些资源,导致应用程序崩溃。
如果你需要将资源文件包含在 APK 中,你应该使用 api
配置而不是 compileOnly
。api
配置表示该依赖项在编译和运行时都可用,因此资源文件也会被包含在最终的 APK 中。