我是靠谱客的博主 闪闪黑裤,最近开发中收集的这篇文章主要介绍SprngBoot项目之打包场景原因解决方案,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

场景

在我们要将SpringBoot项目进行部署时,我们需要将其打包成jar包、war包等。但是我们会发现jar包或war包的目录结构有些问题,我们如何解决这个问题呢?

			<!-- 用该插件打包目录结构有问题-->
			<plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>

原因

产生该问题的原因是spring-boot-maven-plugin对Maven插件的包装,在没有排除内嵌Tomcat的情况下,SpringBoot在对项目打包是会设置主程序属性。因此在我们不需要SpringBoot对我们的包包装的情况下,使用Maven本身打包即可。

解决方案

不使用spring-boot-maven-plugin,使用Maven本身的相关插件:

	<plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <!-- 配置自定义分隔符-->
                <configuration>
                    <delimiters>
                        <delimiter>#</delimiter>
                    </delimiters>
                    <!--是否使用默认分隔符-->
                    <useDefaultDelimiters>true</useDefaultDelimiters>
                </configuration>
            </plugin>
            <!--使用Maven本身编译插件 -->
            <plugin>
            	<groupId>org.apache.maven.plugins</groupId>
            	<artifactId>maven-compiler-plugin</artifactId>
            	<configuration>
            		<!-- 指定java 版本-->
                	<source>1.8</source> 
                	<target>1.8</target> 
                	<fork>true</fork>
                	<compilerArgs>
                		<!-- 解决编译是无法使用到JDK rt.jar包问题-->
            	        <arg>-XDignore.symbol.file</arg>
        	        </compilerArgs>
    	        </configuration>
	        </plugin>
			<plugin>
				<artifactId>maven-war-plugin</artifactId>
				<configuration>
					<!--如果想在没有web.xml文件的情况下构建WAR,请设置为false。 -->
					<failOnMissingWebXml>true</failOnMissingWebXml>
				</configuration>
			</plugin>
        </plugins>

最后

以上就是闪闪黑裤为你收集整理的SprngBoot项目之打包场景原因解决方案的全部内容,希望文章能够帮你解决SprngBoot项目之打包场景原因解决方案所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(48)

评论列表共有 0 条评论

立即
投稿
返回
顶部