springboot打包去除资源文件及启动时指定配置文件位置

springboot打包时,去掉资源文件,可按照如下配置

<build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <excludes>
                    <exclude>*.properties</exclude>
                    <exclude>*.log4j2.xml</exclude>
                </excludes>
            </resource>
        </resources>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                  <skipTests>true</skipTests>
                </configuration>
            </plugin>
        </plugins>
    </build>

但这样配置后,在eclipse中启动springboot项目,则会出现读取不到配置资源的情况,所以在eclipse启动项目时,需要注释掉如下配置

<resources>
        <resource>
            <directory>src/main/resources</directory>
                <excludes>
                    <exclude>*.properties</exclude>
                    <exclude>*.log4j2.xml</exclude>
                </excludes>
        </resource>
</resources> 

项目打成jar包后,运行时,可将配置文件放入jar包同级目录下或者在同级的config目录下(放入classpath下或者classpath下config目录下也可以,但是打成jar包,就需要一起打包出来)

配置文件加载顺序为:

jar包同级目录下的config文件夹下配置

jar包同级目录下配置

classpath下config目录下配置

classpath下配置

java -Xms100m -Xmx100m -jar myboot001-0.0.1-SNAPSHOT.jar &

也可指定加载配置文件的地址

java -Xms100m -Xmx100m -jar myboot001-0.0.1-SNAPSHOT.jar --spring.config.location=configs/application.properties

以DEBUG方式启动

java -Xms100m -Xmx100m -jar myboot001-0.0.1-SNAPSHOT.jar --spring.config.location=configs/application.properties --debug

原文地址:https://www.cnblogs.com/qq931399960/p/9962401.html

时间: 2024-08-01 20:44:32

springboot打包去除资源文件及启动时指定配置文件位置的相关文章

设置开机启动时指定非ROOT用户执行相应的脚本

1 [[email protected] sm01]# vim /etc/rc.d/rc.local 2 3 #!/bin/sh 4 # 5 # This script will be executed *after* all the other init scripts. 6 # You can put your own initialization stuff in here if you don't 7 # want to do the full Sys V style init stuf

springboot多环境日志配置,启动时logback-test.xml文件冲突导致启动失败:openFile(null,true) call failed. java.io.FileNotFoundException

如题,在项目中用到了4个环境的日志配置文件,启动时在application.properties中指定环境,让springboot自动加载logback对应的配置文件: 每个环境的日志目录都不一样,比如sit和test环境分别是: 如果spring.profiles.active配置的是test,那么一切正常,非test环境,则启动失败.比如我现在配置spring.profiles.active=sit来启动联调环境,报错日志如下: 2020-01-10 14:32:33.579 |-ERROR

windows下修改tomcat启动时指定的jdk

我本机默认的jdk版本是1.7,装有tomcat7和tomcat8两个版本的tomcat.现在是想用tomcat8使用jdk1.8来运行 1.查看tomcat启动时使用的jdk版本 cmd->%TOMCAT_HOME%/bin下执行version 此时我的tomcat使用的jdk1.8的版本,这个时候我将它修改成为jdk1.7的版本. 2.编辑 %TOMCAT_HOME%/bin/setclasspath.bat文件(linux下编辑setclasspath.sh文件) 上面修改成为对应jdk的

除了创建时指定窗口位置之外,还有3种移动窗口位置的办法(移动的同时往往可以改变窗口大小)(SetWindowPos最有用,它有许多标志位)

首先,在创立窗口对象的时候,CreateWindowEx就可以指定窗口的位置.除此之外,还有三种方法可以改变窗口的位置: procedure TWinControl.CreateWindowHandle(const Params: TCreateParams); begin // 根据之前准备的Params参数使用API创建窗口.其10个参数都是Params的参数,0表示Menu,WindowClass的十项内容只用到了hInstance一项 // important 控件移到正确的显示位置,就

pyinstaller打包资源文件及包含eyed3模块时提示找不到libmagic处理

这两天用python写了个小工具,用到了eyed3,用pyinstaller打包时提示找不到libmagic 版本信息: python 3.6.5 pyInstaller 3.4 python-magic-bin 0.4.14 eyeD3 0.88 wxpython 4.0.3 eyeD3 在Windows下使用时,文件名带有中文时乱码,提示找不到文件,解决办法(magic.py 230行左右): if is_unicode: return filename.encode('utf-8') el

SpringBoot系列四:SpringBoot开发(改变环境属性、读取资源文件、Bean 配置、模版渲染、profile 配置)

1.概念 SpringBoot 开发深入 2.具体内容 在之前已经基本上了解了整个 SpringBoot 运行机制,但是也需要清楚的认识到以下的问题,在实际的项目开发之中,尤其是 Java 的 MVC 版项目里面,所有的项目都一定需要满足于如下几点要求: · 访问的端口不能够是 8080,应该使用默认的 80 端口: · 在项目之中为了方便进行数据的维护,建议建立一系列的*.properties 配置文件,例如:提示消息.跳转路径: · 所有的控制器现在都采用了 Rest 风格输出,但是正常来讲

springboot打包依赖包和配置文件分离

前言:springboot项目打包使用spring-boot-maven-plugin插件,默认会将依赖包和配置文件统统打进可执行jar文件中,使得jar文件太臃肿,则正式环境修改配置文件较麻烦,因此需要将配置文件和依赖jar包分离.如下: 1.打包时将依赖jar排除,并将依赖包拷贝到指定目录(target/lib) <build> <!--指定打成的jar包名称--> <finalName>bill</finalName> <plugins>

java 从jar包中读取资源文件

在代码中读取一些资源文件(比如图片,音乐,文本等等),在集成环境(Eclipse)中运行的时候没有问题.但当打包成一个可执行的jar包(将资源文件一并打包)以后,这些资源文件找不到,如下代码:Java代码 [java] view plaincopy //源代码1: package edu.hxraid; import java.io.*; public class Resource { public  void getResource() throws IOException{ File fil

(转)java 从jar包中读取资源文件

(转)java 从jar包中读取资源文件 博客分类: java 源自:http://blog.csdn.net/b_h_l/article/details/7767829 在代码中读取一些资源文件(比如图片,音乐,文本等等),在集成环境(Eclipse)中运行的时候没有问题.但当打包成一个可执行的jar包(将资源文件一并打包)以后,这些资源文件找不到,如下代码:Java代码 [java] view plaincopy //源代码1: package edu.hxraid; import java