问题标签 [gradle-kotlin-dsl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2747 浏览

intellij-idea - 如何使用 Kotlin DSL 为 Gradle 配置 Kotlin 协程?

使用带有 Kotlin-DSL 的 Gradle 4.4.1,我想在我的 Kotlin 1.2.20 项目中配置实验性的 Kotlin 协程。这被证明是非常困难的。

Kotlin 官方文档本身只提到了带有 Groovy DSL 的 Gradle,而不是 Kotlin。

Kotlin-DSL 项目有一个不起作用的协程示例。可能是针对较旧的 Gradle 版本(该脚本中的 Kotlin 版本是 1.1.51,这本身就很可疑)。

PS:即使是 IntelliJ 的configure Kotlin也会编写不正确的 Gradle 代码。降级是唯一的选择吗?


附录:在 IntelliJ IDEA 中构建脚本非常红。IDE 一直在添加导入语句。似乎这些徒劳的尝试使脚本无法正常工作。我暂时禁用了“即时添加明确的导入”,即使脚本大部分保持红色,Gradle 也可以执行它。之后,IntelliJ 的错误通知也消失了。

0 投票
2 回答
1522 浏览

gradle - 使用 Gradle Kotlin 配置 maven 插件

试图将项目转换为 GSK

我们在 Groovy 中有这个:

在葛兰素史克,我做到了这一点:

我如何实际构造/配置存储库对象以分配给 MavenDeployer 的存储库/快照存储库属性?Groovy 摘录中的 mavenLocal() 对部署者有什么作用,我如何在 Kotlin 中调用它(因为它是 RepositoryHandler 上的一个方法,而不是 MavenDeployer)?问题,问题

使用 Gradle 4.4

0 投票
2 回答
1937 浏览

google-app-engine - 如何使用 Kotlin DSL 配置 AppEngine Gradle 插件

https://cloud.google.com/appengine/docs/standard/java/tools/gradle-reference中所述,AppEngine Gradle 插件提供如下配置:

使用 a 时,这样的配置应该如何build.gradlke.kts

我正在查看 AppEngine 任务,但不明白将其连接到正确的 Kotlin DSL 设置。

编辑

当简单地将上述块添加到build.gradle.ktsIntelliJ 时,会抱怨:

  • 未解决的参考:端口
  • 未解决的参考:部署

从 cml 运行 Gradle 时,我得到:

无法打开缓存目录 azhqxsd1d4xoovq4o5dzec6iw (/Users/test/.gradle/caches/4.5/gradle-kotlin-dsl/azhqxsd1d4xoovq4o5dzec6iw)。内部错误:无法编译脚本,详见日志

编辑2

在下面添加pluginsbuildscript块:

编辑3

我看到这是由以下内容生成的kotlinDslAccessorsReport

但老实说,我不知道这如何进一步帮助我。

0 投票
1 回答
682 浏览

maven - 如何将 gradle 中的 groovy 任务转换为 Gradle Kotlin DSL 以生成 pom.xml?

以下 Gradle 脚本的 build.gradle.kts 版本是什么?

参考

1- Gradle 样本在这里

0 投票
1 回答
1885 浏览

gradle - 如何覆盖 gradle kotlin-dsl 中的任务

在 Groovy 中,我会覆盖这样的任务:

我如何使用 Kotlin-dsl 做到这一点?我知道我可以创建这样的任务:

但我找不到将其声明为覆盖的等效方法,这会导致错误

0 投票
1 回答
448 浏览

osgi - Gradle WAR插件处理后如何编写MANIFEST.MF,仍然使用bnd功能?

我需要用 common ( ) 存档的结构打包一个jar(或war格式无关,请进一步阅读)。这意味着我需要充满 dep-cy的文件夹(不是扁平/阴影)和所有常见的东西,如资源等。warwabWEB-INF/classes/libjar

因此,与非常常见的 NON-osgi 的主要区别war在于正确编写的清单。问题是,任务的BND进程,然后战争插件搞砸了一切。JarGradle

现在我已经找到了解决方案,但我对此并不满意。总的来说,我觉得应该有更好的方法。主要有两种策略:

  1. 不使用war插件并依赖BND丰富的功能。
  2. 使用war插件,但以某种方式重新排列构建,所以它做它的事情,但让它做它的BND事情,据说在war. (所以,首先是WARBND之后。)

一点输入数据。我相信这是 bnd 中的一个主要 SUPER_BUG,因为我所说的所有内容都应该只使用一个指令-wablib,但是,它的主要问题是它以不同的方式而不是例如以某种方式-includeresource工作。-wablib获取某种 full_path_to_resource 的输入,这在 gradle 和总体上进行项目评估和解决时不可用,如果它可以采取同样的jar_name.jar方式,它可能会很棒includeresource。但事实并非如此!因此,即使在尝试提取具有所有依赖项的完整路径的字符串之后,也永远不会gradle's configuration is not allowed to be manually resolved获取这些路径。

另一方面,第二种列出的方式有效,但它看起来和感觉就像一根拐杖。好像不应该那样。我的意思是手动构建Bundle-ClassPathandInclude-Resources

如何使用插件轻松创建WARs而不是扁平/阴影?WABwar gradle

片段(更新

我设法通过添加;lib:=truebnd 来避免显式构造 manifestClasspath 。

更新

我也设法通过使用没有 gradle 'war' 插件的 bnd 来获得我想要的东西。但这不是我想要的。这构造了整个jar//无论你叫什么warwab它的结构与 gradle 'war' 插件和正确的清单完全相同,但我想将正确的清单创建与组装档案分开,所以没有从 gradle 到 bnd 的委托工具功能

0 投票
1 回答
7873 浏览

gradle - 如何为 Kotlin (Gradle) 构建导入 ShadowJar 插件?

构建失败:

有问题的导入语句:

如前所述删除Shadow 的导入会提供干净的构建和运行。如何让 Kotlin 导入 Shadow 插件 JAR?

Gradle 本身,使用 DSL,创建 Shadow JAR 的罚款。

从另一个角度来看:

Kotlin 遇到 Gradle:gradle.build.kt 和 ShadowJar

使用工作构建文件。

0 投票
1 回答
7915 浏览

gradle - 如何使用 gradle 脚本 Kotlin 构建文件构建可运行的 ShadowJar?

最简单的 Kotlin hello world for gradle script Kotlin

为简洁起见,请参阅项目本身,它实际上仅由构建文件和 kotlin 脚本组成。

如何使用 gradle 脚本 Kotlin 构建文件构建可运行的 ShadowJar?

0 投票
1 回答
1545 浏览

kotlin - 找不到 Kotlin 脚本 Gradle 的 kotlin-gradle-plugin

构建失败,类路径错误:

cat build.gradle.kts

构建文件是工作构建的直接副本。上下文是从Kotlin 脚本 Gradle开始的。据我所知,剧本应该不错

请注意,我没有使用 intelli-J,这完全来自带有 Kotlin 脚本 Gradle 的 CLI。

也许这很简单,比如“插件”与“插件”......

0 投票
1 回答
124 浏览

android - 应用程序模块的 Kotlin Gradle 问题

这是我的项目结构。我使用 Gradle Kotlin DSL。问题是“我的应用程序模块不是基于 Gradle”,但它有 build.gradle.kts 文件。我还将 buildSrc 添加到 app 模块,但没有帮助。

项目结构为:

在此处输入图像描述