android - 有没有办法禁用特定包的使用?

标签 android gradle

我所在的团队有多个开发人员。我们通过 android-junit5 使用 JUnit5,并使用 org.junit 包中的 @Test 注释编写测试,而不是 org.junit.jupiter.api 包被排除在 gradle 的测试报告之外。如果可能的话,我想彻底阻止开发人员使用 org.junit。有没有办法使用 gradle 来做到这一点?我想实现这个特定的解决方案而不是解决方法,因为还有其他实例我们想阻止用户使用给定的包(java.time.* in Java 8 vs ThreeTenABP)

谢谢

最佳答案

解决该问题的一种方法是创建一个仅包含允许的 API 的 Jar。然后,您可以将该 jar 上传到存储库,并要求开发人员将其用作 testCompileOnly 依赖项,同时将原始 jar 保留为 testRuntimeOnly 依赖项。

这将保证测试代码无法访问禁止的类/包,因为它在编译期间看不到它们。

关于android - 有没有办法禁用特定包的使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55208181/

相关文章:

java - 在Java中为异步调用添加超时

php - 如何使用 PHP 设置新​​的 Google Cloud Messaging API 服务器实现和托管?

java - Opengl es on android problem with object opsition on projection matrix

android - 如何禁用我的 Android 应用 WebView 字体的设备字体大小更改

Android Studio 本地路径不存在

gradle - 如何覆盖 gradle kotlin-dsl 中的任务

android - 您的应用未使用 AndroidX - Flutter 不允许我生成 apk

gradle - 在配置阶段使用settings.gradle中的ant

android - Gradle构建失败:无法使用BuildScopeServices.createScriptPluginFactory()创建ScriptPluginFactory类型的服务

java - 如何使用 Android 注释通过 Intent 获取额外数据?