小编wel*_*ell的帖子

在 kotlin 上使用模块构建 gradle 脚本

我想在我的 gradle 构建脚本中从 groovy 迁移到 kotlin dsl。我在项目中有 2 个脚本: build.gradle 和 publish-maven.gradle 附加在第一个脚本中。

对于 groovy 我应用脚本所以:

apply from: "${rootProject.projectDir}/publish-maven.gradle"
Run Code Online (Sandbox Code Playgroud)

对于 kotlin,我发现相同的代码如下所示:

apply(from = "publish-maven.gradle.kts")
Run Code Online (Sandbox Code Playgroud)

但是 publish-maven.gradle.kts 不附加到 build.gradle.kts。在IDE中的脚本顶部不断挂起警告:

代码洞察不可用(上次 Gradle 项目导入期间未收到此脚本的配置)

并且无法识别 kotlin 语法。

我也试试

apply(from = "${rootProject.projectDir}/publish-maven.gradle.kts")
Run Code Online (Sandbox Code Playgroud)

或者找到了其他例子,但没有一个有帮助。

我该怎么做才能应用这个脚本?或者一般问题是如何将构建脚本拆分为多个文件?

摇篮版本:6.7;JDK:1.8;IDE:IntellijIdea

gradle kotlin

10
推荐指数
1
解决办法
1540
查看次数

Apache Camel和Intellij Idea代码格式

Intellij Idea在camel路由中格式化代码,如下所示:

from("direct:loop")
     .log("Loop: ${header[loopCount]}")
     .choice()
     .when(simple("header[loopCount] < 10"))
     .process(exchange -> {
         Message in = exchange.getIn();
         in.setHeader("loopCount", in.getHeader("loopCount", Integer.class) + 1);
     })
     .to("direct:loop")
     .otherwise()
     .log("Exiting loop")
     .end();
Run Code Online (Sandbox Code Playgroud)

是否有任何插件或其他方法可以这样做:

from("direct:loop")
 .log("Loop: ${header[loopCount]}")
 .choice()
     .when(simple("header[loopCount] < 10"))
         .process(exchange -> {
             Message in = exchange.getIn();
             in.setHeader("loopCount", in.getHeader("loopCount", Integer.class) + 1);
         })
         .to("direct:loop")
     .otherwise()
         .log("Exiting loop")
 .end();
Run Code Online (Sandbox Code Playgroud)

java intellij-idea apache-camel

9
推荐指数
2
解决办法
1149
查看次数

标签 统计

apache-camel ×1

gradle ×1

intellij-idea ×1

java ×1

kotlin ×1