惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Apple Machine Learning Research
Apple Machine Learning Research
Y
Y Combinator Blog
博客园 - 【当耐特】
V
Visual Studio Blog
GbyAI
GbyAI
V
V2EX
P
Proofpoint News Feed
Microsoft Azure Blog
Microsoft Azure Blog
Microsoft Security Blog
Microsoft Security Blog
D
DataBreaches.Net
Hugging Face - Blog
Hugging Face - Blog
A
About on SuperTechFans
The Cloudflare Blog
阮一峰的网络日志
阮一峰的网络日志
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
N
Netflix TechBlog - Medium
aimingoo的专栏
aimingoo的专栏
B
Blog RSS Feed
量子位
MongoDB | Blog
MongoDB | Blog
有赞技术团队
有赞技术团队
人人都是产品经理
人人都是产品经理
Stack Overflow Blog
Stack Overflow Blog
小众软件
小众软件

博客园 - 果然如此

微信小程序UI组件、开发框架、实用库 sql查询优化--数字转换字符串字段 Microsoft.Web.Infrastructure, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad Git简易的命令行入门教程 .NET Framework 历史版本(2017年) 深入理解 JavaScript 事件循环(一)— event loop TypeScript白鹭引擎Egret防止按钮事件冒泡穿透 maven多模块启动required a bean of type com.xxx.xxx.service that could not be found. idea常用快捷键 启动类加注解@MapperScan spring boot mybatis 启动错误 Maven项目mybatis Invalid bound statement (not found)解决方法 Re:从零开始的Spring Security Oauth2(三) Re:从零开始的Spring Security Oauth2(二) Re:从零开始的Spring Security Oauth2(一) typescript多维对象数组仿List泛型 TypeScript 基本语法 idea新建maven项目没有src目录 spring boot 错误:Check your ViewResolver setup 《乔布斯传》经典摘录(七)
spring boot maven多模块打包部署到tomcat
果然如此 · 2018-04-08 · via 博客园 - 果然如此
@SpringBootApplication(scanBasePackages = {"com.xxx.*"})
public class ApiApplication extends SpringBootServletInitializer {

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
        return application.sources(ApiApplication.class);
    }
    public static void main(String[] args) {
        SpringApplication.run(ApiApplication.class, args);
    }
}

api的pom.xml

<build>
        <plugins>

            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <!-- 指定该Main Class为全局的唯一入口 -->
                    <mainClass>com.xxx.api.ApiApplication</mainClass>
                    <layout>ZIP</layout>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal><!--可以把依赖的包都打包到生成的Jar包中-->
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <!--maven打包排除spring-boot内嵌tomcat容器依赖jar-->
            <plugin>
                <artifactId>maven-war-plugin</artifactId>
                <version>3.0.0</version>
                <configuration> 
                    <!--打包后的名称-->
                    <warName>xxx-api</warName>
                    <packagingExcludes>
                        WEB-INF/lib/tomcat-embed-*.jar,
                        WEB-INF/lib/spring-boot-starter-tomcat-*.jar
                    </packagingExcludes>
                </configuration>
            </plugin>            
        </plugins>
    </build>

cmd进入项目根目录单独打包api模块:

mvn -pl xxx-api -am install