编译要在Java 7中使用的Java 8 Android库

Sam*_*ern 6 java lambda android java-8

假设我正在制作一个Android库(以分发.aar),并且我想在内部库代码中使用Java 8语言功能。基本内容,例如lambdas等。

以我的经验,如果我随后汇编并发布此库,则任何依赖它的开发人员都将在构建时出错,除非他们将其添加到他们的build.gradle

android {
  // ...
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}
Run Code Online (Sandbox Code Playgroud)

有什么方法可以编译我的库,从而使消费者不必这样做吗?假定该库的公共API表面不包含任何Java 8特定功能。