java - 将项目打包为 jar 到 war 项目 (Gradle)

标签 java gradle

我有一个包含 3 个模块的 Gradle 项目:

  • project-core(无依赖)
  • project-web(依赖于project-core)
  • project-plugin(依赖于两个模块)

我不想每次打WAR的时候都手动把插件添加到project-web的classpath中,所以想扩展WAR任务,创建一个“warWithPlugin”任务,它也将插件 jar 添加到 libs 文件夹。

显然我不能将 project-plugin 添加为依赖项,因为我得到了循环依赖项。我还有哪些其他选项可以将插件 jar 打包到 WAR 中?

最佳答案

当然,您可以使用 project-plugin 作为依赖项创建一个新配置,然后将该配置添加到您的 WEB-INF/lib 目录。

configurations {
    plugin
}

dependencies {
    plugin project(':plugin')
}

war {
    into('WEB-INF/lib') {
        duplicatesStrategy 'exclude'
        from configurations.plugin
    }
}

关于java - 将项目打包为 jar 到 war 项目 (Gradle),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26088608/

相关文章:

java - 当我在平板电脑上运行应用程序时,Android Studio 中的按钮看起来很乱

gradle - Rubyists的 Gradle ……相当于 `bundle install`

java - 原因: unable to find valid certification path to requested target

android-studio - Android Studio配置命令行属性

kotlin - 如何使用 Gradle Kotlin buildSrc 插件自定义 KotlinCompile 任务?

java - 在线程 "main"java.lang.NoClassDefFoundError : com/google/common/base/Function while importing chemaxon jar 中出现异常

java - 开发一个简单的表单

java - PreparedStatement.setTimestamp 没有将时间戳插入数据库

java - spring data JPA CriteriaBuilder.isNull 返回语法错误

gradle - 插件如何以编程方式配置maven-publish发布并允许build.gradle修改它