SpringBoot 使用 gradle/maven 打 war 包

原文:https://blog.csdn.net/KingBoyWorld/article/details/75244769

##一、应用插件

1.1 gradle 在gradle.build文件中新增apply plugin: war:

apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'org.springframework.boot'

1.2 maven 需把元素的值从jar改为war。

<packaging>war</packaging>

##二、新增类

这样就能生成WAR文件了。但如果WAR文件里没有启用Spring MVC DispatcherServlet 的web.xml文件或者Servlet初始化类,这个WAR文件就一无是处。

此时就该Spring Boot出马了。它提供的SpringBootServletInitializer是一个支持 Spring Boot的Spring WebApplicationInitializer实现。除了配置Spring的Dispatcher- Servlet,SpringBootServletInitializer还会在Spring应用程序上下文里查找Filter、 Servlet或ServletContextInitializer类型的Bean,把它们绑定到Servlet容器里。

要使用SpringBootServletInitializer,只需创建一个子类,覆盖configure()方法 来指定Spring配置类。

@SpringBootApplication
public class SSOApplication extends SpringBootServletInitializer{

    public static void main(String[] args) {
        SpringApplication.run(SSOApplication.class, args);
    }

    /**
     *重写configure
     * @param builder
     * @return
     */
    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(SSOApplication.class);
    }
}

虽然应用程序里还有其他Spring配置类,但没有必要在这里把它们全部注册进来。 Application类上添加了@SpringBootApplication注解。这会隐性开启组件扫描,而组件扫 描则会发现并应用其他配置类。

##三、构建

现在我们可以构建应用程序了。如果使用Gradle,你只需调用build任务即可:

> gradle build

没问题的话,你可以在build/libs里看到一个名为readinglist-0.0.1-SNAPSHOT.war的文件。

对于基于Maven的项目,可以使用package:

> mvn package

成功构建之后,你可以在target目录里找到WAR文件。

来源:springboot实战

转载于:https://my.oschina.net/pk2015/blog/3035575

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值