前言
在我们写完一个springboot的项目之后,不能避免的会涉及到配置日志以及打包的问题,因为最终项目肯定要在linux上,x86或者arm系统上运行。部署项目以及查看日志都是非常重要的。本篇就这两件事情稍微说一下。
日志配置问题
一般的我自己写的项目做日志配置的时候,就默认使用lombok的slf4j了。使用的基本姿势如下:
引入lombok依赖:
需要使用的类标识相关注解
需要的地方直接打日志就可以了
为了在部署到linux之后能看到完整的log文件,方便定位问题、分析服务状况,需要对日志做一下配置,如下,你需要使用的话只需要修改标签即可,例如我这里定义的ff/vv就是将日志生成到ff文件夹下,名称为vv.%d{yyyy-MM-dd}.log。
1 | xml复制代码<?xml version="1.0" encoding="UTF-8"?> |
项目打包问题
项目打包,如果单纯使用下面的spring-boot-maven-plugin,效果可能并不好。因为它会将配置文件、lib包全部打到最终的jar包里面,这显然不是想要的。原因在于,我并不打算将配置文件和lib包全部打到最终的jar包里面,因为例如想修改下配置文件,不可能全部重新打包再上传到要部署服务的系统,而是简单地修改下配置文件直接重启就可以了。又比如lib中的依赖没什么问题,仅仅是代码写的有问题,那么我只想修改下代码重新上传再重启就可以了。而不是顺带着传递庞大的lib包。
没对比或许没什么伤害,我们先看下上面的这个spring的maven打包插件打出的包的效果。
BOOT_INF下面直接携带了整个的lib。配置文件则是出现在classes下面.这不是我们想要的,这就意味着,每次我改一行代码,除了代码之外都还要重新上传整个的lib和配置文件,太糟糕了。
研究了很久,最终用apache的打包插件打出了自己想要的包,将需要的插件整个的粘贴给大家。
1 | xml复制代码<build> |
现在咱们再来看下整个的打包效果。
ok.是我们期待的结果了。经过验证,打出来的文件都是正常没有问题的。整个的jar包也非常的干净!
还有一个问题需要提及下,原本的结构中。直接使用java -jar就可以启动项目了,但是现在是不行的。你需要自己指定下依赖包和配置文件!
下面粘贴下整个的一个启动、停止、状态shell脚本。
1 | sh复制代码#!/bin/bash |
启动命令最后这里的>/dev/null 2>&1 &,因为我在日志配置中已经指定日志的输出位置了,所以这边不再将其单独输出到某文件,有需要的话,可以自己指定文件!
本篇到此结束。
本文转载自: 掘金