切换到kotlin时在gradle中替换scalacompile

dw1jzc5e  于 2021-07-14  发布在  Java
关注(0)|答案(0)|浏览(240)

我将一个最初用scala编写的项目转换成kotlin。这是一个典型的后端-前端设计,后端用scala编写,前端用angular编写(代码由一位不再从事此项目的前同事编写)
在gradle构建期间,对e2e测试进行评估。为此,后端将按以下方式编译:

import org.gradle.api.Plugin
import org.gradle.api.Project
import org.gradle.api.tasks.scala.ScalaCompile

class ScalaCompilerPlugin implements Plugin<Project> {
    void apply(Project project) {

        project.configurations {
            scalaCompilerPlugin
        }

        project.afterEvaluate {
            project.tasks.withType(ScalaCompile) {
                options.encoding = 'UTF-8'
                if (scalaCompileOptions.additionalParameters == null) {
                    scalaCompileOptions.additionalParameters = []
                }
                scalaCompileOptions.additionalParameters <<
                        "-Xplugin:" + project.configurations.scalaCompilerPlugin.asPath
            }
        }
    }
}

然后将“scalacompilerplugin”插件添加到后端的build.gradle文件中。

plugins {
    id 'scala'
    id 'com.github.psxpaul.execfork' version '0.1.12'
}
apply plugin: ScalaCompilerPlugin

// ...

因为现在这个项目被转换成了kotlin/ktor,我计划使用类似于kotlincompiler的插件来达到同样的目的,但是在gradle6.0.1中,似乎没有这样的插件,而且由于gradle不够坚定,我不知道如何添加org.jetbrains.kotlin.gradle.tasks.kotlincompile。
如何在gradle构建期间实现相同的功能并启动后端,以便在测试运行期间运行e2e测试?我也愿意接受改变这种设计的建议。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题