Gradle 将 "src/main/java"和 "src/main/kotlin"拆分为子模块

标签 gradle intellij-idea build.gradle

我的项目从一个 build.gradle 开始(没有多项目)。该项目有src/test/javasrc/test/kotlin文件夹。
到目前为止,我已经为这两个项目应用了配置。
主要问题是 java 与 JDK 9 不兼容。 kotlin 的子模块和 JDK 8子模块。带有此错误消息

Could not target platform: 'Java SE 9' using tool chain: 'JDK 8 (1.8)'.


我想申请:
  • 仅限 src/test/java特定配置 (sourceCompatibility = 1.9)
  • src/test/kotlin 相同此配置 (kotlinOptions.jvmTarget = "1.8")

  • 如何在不移动文件的情况下将两个文件夹(java 和 kotlin)拆分为子模块? 文件夹不必拆分为子模块。我只想应用不同的编译选项。
    项目build.gradle is there

    最佳答案

    使用sourceSets

    sourceSets {
    
                    test {
                        kotlin {
                            srcDirs = ["src/test/kotlin"]
                        }
                        java {
                            srcDirs = ["src/test/java"]
                        }
                    }
                }
    

    关于Gradle 将 "src/main/java"和 "src/main/kotlin"拆分为子模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63837213/

    相关文章:

    gradle - Archiva无法使用Gradle发布

    java - 用于保存 Java -> HTML 的 Intellij IDEA 插件?

    java - Eclipse 和 IntelliJ 的不同类加载器路径

    spring-boot - Gradle 4.7构建抛出错误执行任务bootRepackage

    gradle - 如何在Gradle中将依赖项复制到Build目录

    android - 如何从Google git在Android Studio中构建项目,它没有gradle文件?

    tomcat - 你好,我部署了war文件,但是我无法启动它

    android - NoClassDefFoundError:com.exacttarget.etpushsdk.ETLocationManager $ RegionMonitor

    java - 编译器错误::Intellij Idea 与 Eclipse

    android - 导入到另一个项目的 Gradle 模块中的 `rootProject`