当前位置: 首页 > 知识库问答 >
问题:

Gradle:多项目&构建WAR文件

秋兴思
2023-03-14

我正在改变我们的项目,以使用gradle作为构建工具,但正在与2个问题斗争;

:project-root
------:client //GWT Java Files & GWT Centric resources, e.g. CSS, Images, ui-xml etc..
------:server //Server based logic, e.g. controllers, services, repositories etc.
------:web-app//NON GWT resources for the web-app, e.g. , web.xml, static pages, images 
war{
    dependsOn ':client:compileGwt'
    from {'src/main/root-content'}
    webInf {from 'src/main/web-inf-content'}
}
war{
    from {'src/main/root-content','$:CLIENT/gwt-compiler-js-output-dir-as-declared-in-client-build-file}
    webInf {from 'src/main/web-inf-content'}
}

共有1个答案

邢承弼
2023-03-14

您可以手动声明自己的任务依赖项,前提是不引入依赖项问题。:)你试过做这样的事情吗?

javaCompile.dependsOn(project(':yourproject').taskName)

希望有帮助!

 类似资料:
  • 我想将一个maven项目集成到我的gradle构建过程中。虽然我成功地将maven项目(这是一个war overlay项目)转换为gradle项目,但这样做有几个缺点。首先,maven tomcat插件可以轻松创建带有嵌入式tomcat实例的可运行jar。我找不到一个gradle插件来做这个工作。为了解决这个问题,我看到了四种不同的方法,我想知道哪一种是最好的,或者是否有其他的可能性。 null

  • 主要内容:多项目构建的结构,指定常规构建配置,项目指定配置和依赖关系,Gradle多项目构建的示例,子项目配置,参考可以轻松处理各种大小规模的项目。小项目由一个单一的构建文件和一个源代码树构成。 大项目可以将其拆分成更小的,相互依赖的模块,以便更容易理解。Gradle完美支持这种多项目构建的场景。 多项目构建的结构 这种构建有各种形状和大小,但它们都有一些共同的特点 - 在项目的根目录或主目录中都有一个文件。 根目录或主目录都有一个文件。 具有自己的构建文件的子目录(某些多项目构建可能会省略子项

  • 嗨,我有两个项目,文件如下: 项目1:构建。格拉德尔 项目2:构建。格拉德尔 当我从Project 1执行test1任务时,我得到以下错误: 正在运行任务测试2 失败:生成失败,出现异常。 > 错误:评估脚本时出现问题。建筑属性(无此类文件或目录) 尝试:使用--stacktrac选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获取更多日志输出。 建筑失败 总时间:5.779秒

  • 主要内容:Groovy插件,Groovy项目的默认项目布局本章介绍如何使用文件编译和执行Groovy项目。 Groovy插件 Gradle的Groovy插件扩展了Java插件,并为Groovy程序提供了任务。可以使用以下行来应用groovy插件。 完整的构建脚本文件如下。将以下代码复制到文件中。 可以使用以下命令来执行构建脚本。 Groovy项目的默认项目布局 Groovy插件假定Groovy项目有手动做过一定的设置。 包含Groovy源代码; 包含Gr

  • 主要内容:Java默认的项目布局,初始化任务执行,指定Java版本本章介绍如何使用Gradle构建文件来构建一个Java项目。 首先,我们必须向构建脚本中添加Java插件,因为它提供了编译Java源代码,运行单元测试,创建Javadoc和创建JAR文件的任务。 在文件中使用以下代码行。 怎么样,是不是很简单? Java默认的项目布局 每当添加一个插件到构建中,它会假设一个特定的Java项目设置(类似于Maven)。看看下面的目录结构。 目录包含Java源代码;

  • 我们有一个带有设置的多项目。渐变和无构建。根项目中的gradle。 gradle的默认行为是查找顶部目录上的settings.gradle文件并读取之前定义的每个项目的build.gradle。 我的问题是:根据签出多项目的环境,当从根项目运行构建时,我希望以默认的“build2.gradle”而不是“build.gradle”运行。 最好的方法是什么?? 谢啦