如何查看Gradle 7.4.2的CompileOptions(含generatedSourceOutputDirectory)?
查看Gradle 7.4.2的CompileOptions实际配置
你之前的代码输出属性引用而非实际值,是因为Gradle的惰性配置机制——在配置阶段直接访问options.generatedSourceOutputDirectory时,该属性还未被初始化,只能打印出属性的占位符信息。要查看实际配置值,可通过以下两种方式实现:
方法一:在任务执行阶段打印配置
修改代码,将打印逻辑放到doFirst或doLast闭包中(这两个闭包会在任务执行阶段触发,此时属性已完成初始化):
tasks.compileJava { doFirst { // 打印generatedSourceOutputDirectory的实际路径 def generatedDir = options.generatedSourceOutputDirectory.get().toString() println("Generated Source Output Directory: $generatedDir") // 打印所有CompileOptions配置项 println("\n=== 所有CompileOptions配置 ===") options.properties.each { key, value -> // 过滤内部属性,只显示有效配置 if (!key.startsWith('$') && key != 'metaClass') { println("$key: $value") } } } }
运行./gradlew compileJava(Windows环境用gradlew.bat compileJava),即可在控制台看到实际配置值。
方法二:用Gradle命令行查看
直接通过命令行查看任务属性详情,执行:
./gradlew -q :lib:compileJava --properties
输出结果中会包含options相关的所有配置,你可以从中找到generatedSourceOutputDirectory及其他CompileOptions的实际值。
内容的提问来源于stack exchange,提问作者I was in the neighborhood
相关产品推荐
相关产品推荐

