Merge "Add -Xjvm-defaults=all to kotlin compilations"
diff --git a/java/base.go b/java/base.go
index c399c40..a391f64 100644
--- a/java/base.go
+++ b/java/base.go
@@ -1072,6 +1072,13 @@
kotlincFlags := j.properties.Kotlincflags
CheckKotlincFlags(ctx, kotlincFlags)
+ // This is needed for code that depends on libraries that use @JvmDefault
+ // -Xjvm-default=all will be the default in a future version of kotlin
+ // according to https://blog.jetbrains.com/kotlin/2020/07/kotlin-1-4-m3-generating-default-methods-in-interfaces/
+ if flags.javaVersion >= JAVA_VERSION_8 {
+ kotlincFlags = append(kotlincFlags, "-Xjvm-default=all")
+ }
+
// Workaround for KT-46512
kotlincFlags = append(kotlincFlags, "-Xsam-conversions=class")