gpt4 book ai didi

java - 如何使用 JavaExec 任务将 Java 代码嵌入到 Gradle 构建中

转载 作者:行者123 更新时间:2023-11-30 08:39:33 25 4
gpt4 key购买 nike

我有一个 Gradle 驱动的项目,我想向其中添加一个简单的 Java 任务。这个任务是非常具体的项目,如果它可以帮助我不想将它开发为一个单独的插件。所以问题是我可以在我用于项目的同一个 build.gradle 中定义这样的自定义任务吗?还是我不可避免地需要将其打包为一个单独的项目(插件)并安装到本地仓库?

另外可能重要的是要注意原始项目与 Java 无关(不需要构建其他 Java 代码)

附言基于以下评论:

我想将 src/main/java/SomeUsefulStuff.java 添加到现有项目中,并将该文件编译并用作自定义任务。我知道每次运行构建时都需要对其进行编译,但再次 - 代码会很小。但是它会有一些外部依赖,比如 Commons IO

最佳答案

感谢RaGe谁指出 JavaExec 这原来是非常简单的。以下是您的操作:

  1. 将您的 Java 代码放在/src/main/java 中,就像在常规的 Gradle 驱动的 Java 项目中一样。确保它在您要调用的文件中有 ma​​in 方法
  2. apply plugin: 'java' 添加到 build.gradle
  3. 如果您的 Java 代码对第 3 方库有任何依赖,请将它们添加到 dependencies 部分
  4. 将新任务部分添加到 build.gradle,如下所示:
task usefulStuff(type: JavaExec) {
classpath = sourceSets.main.runtimeClasspath
main = 'com.me.gradle.UsefulStuff'
// arguments to pass to the application
args 'OhmyGod!'
}
  1. 现在您可以将该任务称为构建中的任何任务。例如 imporantTask.dependsOn usefulStuff

关于java - 如何使用 JavaExec 任务将 Java 代码嵌入到 Gradle 构建中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36071615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com