猿问

从 InteliJ IDEA 社区的 Gradle 项目构建 WAR 文件(不包括构建资源)

我使用 InteliJ IDEA 社区版本开发了一个 Spring 应用程序。


社区版不支持 WAR 工件,所以我必须手动获取。


我已经找到了如何在 Maven 项目中做到这一点,但我的是一个 graddle 项目。那么,如何从我的 graddle 项目构建 WAR 呢?


在 maven 项目中,您可以配置使用wagon-maven-plugin的 maven run以获得 WAR 文件。有可能用 graddle 做同样的事情吗?


编辑


我一直在使用 bootWar 和 bootJar 进行测试,以制作两者(Jar 和 War)。


好的,它奏效了。我现在的问题是这两个插件实际上正在打包我的资源目录。


我试过使用 exclude 但它没有用。


这就是我正在做的:


bootJar {

    mainClassName = 'Server.Application'

    exclude("/src/resources/**")

    version =  '0.1.7'

}


bootWar {

    mainClassName = 'Server.Application'

    exclude("/src/resources/**")

    version = '0.1.3'

}

我的项目结构是这样的:

  • 源文件

    • 爪哇

    • 服务器

    • 资源

    • 主要的

编辑 2 - 最后的方法

为了将资源排除在构建之外,我在构建之前将它们删除:

bootJar {

    mainClassName = 'FitServer.Application'

    setDestinationDir(new File ('build/war'))

    version = '0.1.2'


    doFirst {

        delete('build/resources')

    }

}


回首忆惘然
浏览 340回答 1
1回答

元芳怎么了

根据Gradle 指南,有一个war plugin用于构建 Java Web 应用程序,社区提供了一个出色的插件,gretty用于在 Jetty 或 Tomcat 上测试和部署 Web 应用程序。您可以在build.gradle文件中使用此战争插件。
随时随地看视频慕课网APP

相关分类

Java
我要回答