sping-boot-maven-plugin插件的新感悟

最近在对接devops的项目, 今天学到了一个新的技能, 特意跟大家分享一下,  spring-boot-maven-plugin

具体这个插件是做什么用的, 自己也没有上心, 今天特意在官网上查询了一下,终于知道了答案, 特意记录下来, 和大家一起分享。

在我们的devops项目接入中, 如果需要接入, 我们都需要在pom文件中加入如下的配置:

 <build>
       <finalName>${project.name}</finalName>
       <plugins>
         <plugin>
           <groupId>org.springframework.boot</groupId>
           <artifactId>spring-boot-maven-plugin</artifactId>
           <configuration>
             <executable>true</executable>
           </configuration>
         </plugin>
         <plugin>
        </plugins>
 </build>

那这个插件到底起什么作用嗯?我们可以参考官网:https://docs.spring.io/spring-boot/docs/current/reference/html/deployment.html#deployment-install , 讲的是比较明白的。

作为一个老运维出生, 如果我们安装一个服务, 为了方便管理, 我们都想通过

Centos6.X:service {应用} start|stop|restart|reload 等一些列的操作进行服务管理,

Centos7.X:是可以通过systemctl start|stop|restart {应用}  

我们不需要记住那么多的启动参数, 只需要知道应用名字就可以快速启动。

那这个插件其实就是给我们解决这个问题。

centos6.X

我们只需要配置如上的参数, 我们在编译的时候, 就回打包成我们需要的服务, 如果我们打包的jar包的名字是myapp.jar, 那我们直接进行如下的操作就可以了

 sudo ln -s /var/myapp/myapp.jar /etc/init.d/myapp
 service myapp start

centos7.X

如果我们想使用systemctl的操作, 我们只需要在 /etc/systemd/system下创建myapp.service

 [Unit]
 Description=myapp
 After=syslog.target
 
 [Service]
 User=myapp
 ExecStart=/var/myapp/myapp.jar
 SuccessExitStatus=143
 
 [Install]
 WantedBy=multi-user.target

启动

 systemctl enable myapp.service

其实看完以后, 对于我这个老运维出生的开发来说, 还是有点懵逼的, 我们打完的包, 居然做个软连接就可以用, 简直是颠覆了我的认知,今天还特意拿出来看了看myapp.jar文件, 文件内容如下:

这个文件大概300行的位置, 前面是启动脚本, 后面是二进制包, 这样通过软连接的方式, 是可以直接使用的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值