在Linux系统上安装Spring boot应用的教程详解
Unix/Linux 服务
systemd 服务
操作过程
1. 安装了JDK的centOS7虚拟机
注意下载linux版本JDK的时候不能直接通过wget这种直接链接下载,否则会解压不成功,应该打开原官网,点击同意许可后点击下载(这种方式下载很慢),比较好的方式是复制下载页的地址到迅雷,通过迅雷打开该下载页,同意许可后点击下载。
下载后解压、配置环境变量
tar -zxvf jdk1.8.0_211.jar.gz
环境变量配置:/etc/profile 文件最后添加如下
?1 2 3 | export JAVA_HOME= /var/java/jdk1 .8.0_211 export CLASSPATH=.:$JAVA_HOME /lib/dt .jar:$JAVA_HOME /lib/tools .jar export PATH=$PATH:$JAVA_HOME /bin |
添加环境变量之后,执行source /etc/profile,让环境变量生效
2. 准备好要安装的spring boot应用程序
2.1 要想安装成功,尤其要注意pom文件的有关插件的配置。正确示例如下:
?1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <build> <plugins> <plugin> <groupId>org.springframework.boot< /groupId > <artifactId>spring-boot-maven-plugin< /artifactId > <configuration> <mainClass>com.itsherman.dcm.Application< /mainClass > <executable> true < /executable > < /configuration > <executions> <execution> <goals> <goal>repackage< /goal > < /goals > < /execution > < /executions > < /plugin > < /plugins > < /build > |
如果只单单声明了spring-boot-maven-plugin
插件,忽略了后面的配置项,那么很可能你构建的程序包(jar)移植过去启动不成功。报找不到主菜单属性错误。
上面的问题主要是因为构建的可执行jar包中有一个META_INF文件夹,该文件夹下的MANIFEST.MF文件描述了改程序包的主要信息,其中缺少了Main-Class的一行。解决办法是我们可以手动加上,或者按照上面的配置,尤其不能缺少execution的配置项,然后重新执行mvn install。重新生成jar包以后通过winrar工具打开,检查MANIFEST.MF文件的信息。
一般完整的文件信息如下:
?1 2 3 4 5 6 7 8 9 10 | Manifest-Version: 1.0 Archiver-Version: Plexus Archiver Built-By: Sherman Start-Class: com.itsherman.dcm.Application Spring-Boot-Classes: BOOT-INF /classes/ Spring-Boot-Lib: BOOT-INF /lib/ Spring-Boot-Version: 2.1.5.RELEASE Created-By: Apache Maven 3.6.0 Build-Jdk: 1.8.0_172 Main-Class: org.springframework.boot.loader.JarLauncher |
没问题之后,可以尝试在本地使用java -jar myapp.jar
命令执行一下
3. 通过xftp等文件移植工具将jar包移植到【1】 步骤的虚拟机上
4. 在虚拟机上 /etc/systemd/system
下编写服务的配置文件,参考实例如下:
1 2 3 4 5 6 7 8 9 | [Unit] Description=myapp After=syslog.target [Service] User=hadoop ExecStart= /var/java/jdk1 .8.0_211 /bin/java -jar /home/hadoop/myapp/dev-manager .jar SuccessExitStatus=143 [Install] WantedBy=multi-user.target |
•Description: 程序的描述信息
•User: 系统用户
•ExecStart: 程序启动的命令
编写好改配置文件之后,保存,退出
. 启动服务
刷新服务配置信息
systemctl daemon-reload
启动服务
systemctl start myapp.service
开机启动服务
systemctl enable myapp.service
查看服务状态信息
systemctl status myapp.service
6.测试
即打开浏览器,访问服务
总结
以上所述是小编给大家介绍的在Linux系统上安装Spring boot应用的教程详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:https://www.cnblogs.com/yumiaoxia/p/10949694.html
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。