Gradle 模块类型
Gradle module type
我有一个多模块项目。有两种类型的模块:Java库(apply plugin: 'java-library'
)和Android库(apply plugin: 'com.android.library'
)。我有一个自定义 gradle 任务,我需要以某种方式获取模块类型。我需要检查哪个模块 属性?
没有"module type property",不过你可以问问插件管理器哪些插件已经应用到项目中了。例如,为了检查它是否是一个 Java 项目:
public boolean isJavaProject(final Project pProject)
{
PluginManager pluginManager = pProject.getPluginManager();
return pluginManager.hasPlugin("java") ||
pluginManager.hasPlugin("org.gradle.java");
}
同样的想法可以应用于检查其他插件类型。
我有类似的情况,我必须区分 Android 和 Java/Kotlin 模块。
我用过这个:
private fun Project.isAndroidModule(): Boolean = this.hasProperty("android")
我有一个多模块项目。有两种类型的模块:Java库(apply plugin: 'java-library'
)和Android库(apply plugin: 'com.android.library'
)。我有一个自定义 gradle 任务,我需要以某种方式获取模块类型。我需要检查哪个模块 属性?
没有"module type property",不过你可以问问插件管理器哪些插件已经应用到项目中了。例如,为了检查它是否是一个 Java 项目:
public boolean isJavaProject(final Project pProject)
{
PluginManager pluginManager = pProject.getPluginManager();
return pluginManager.hasPlugin("java") ||
pluginManager.hasPlugin("org.gradle.java");
}
同样的想法可以应用于检查其他插件类型。
我有类似的情况,我必须区分 Android 和 Java/Kotlin 模块。
我用过这个:
private fun Project.isAndroidModule(): Boolean = this.hasProperty("android")