我正在创建一个应用程序,它基本上由 3 个 JAVA 模块组成:
所以 AndroidApp 和 HTTPServerStandalone 之间没有依赖关系。他们不需要彼此。
现在我遇到了一个问题,因为我无法在没有安装 Android SDK 的情况下构建 HTTPServerStandalone,因为 settings.gradle 包含所有 3 个模块的包含。有没有办法,在构建 HTTPServerStandalone 时如何防止包含 AndroidApp?
最佳答案
是的,它可以 - settings.gradle:
def localProperties = new File("$rootDir", "local.properties")
if (localProperties.exists()) {
Properties properties = new Properties()
localProperties.withInputStream { instr ->
properties.load(instr)
}
def sdkDir = properties.getProperty('sdk.dir')
if (sdkDir != null) {
def folder = new File(sdkDir);
if (folder.isDirectory()) {
include ':AndroidApp';
} else {
println "WARINING: SKIPPING :AndroidApp MISSING '" + sdkDir + "' IS NOT A DIRECTORY";
}
} else {
println "WARINING: SKIPPING :AndroidApp MISSING 'sdk.dir' IN FILE $rootDir/local.properties";
}
} else {
println "WARINING: SKIPPING :AndroidApp MISSING FILE $rootDir/local.properties";
}
include ':HTTPServerStandalone', ':HTTPServer'
你知道更好的解决方案吗?
关于构建另一个时 Gradle 跳过模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47424598/