经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » Java相关 » Spring Boot » 查看文章
在Linux系统上安装Spring boot应用的教程详解
来源:jb51  时间:2019/5/31 8:35:46  对本文有异议

Unix/Linux 服务

systemd 服务

操作过程

1. 安装了JDK的centOS7虚拟机

注意下载linux版本JDK的时候不能直接通过wget这种直接链接下载,否则会解压不成功,应该打开原官网,点击同意许可后点击下载(这种方式下载很慢),比较好的方式是复制下载页的地址到迅雷,通过迅雷打开该下载页,同意许可后点击下载。

下载后解压、配置环境变量

tar -zxvf jdk1.8.0_211.jar.gz

环境变量配置:/etc/profile 文件最后添加如下

  1. export JAVA_HOME=/var/java/jdk1.8.0_211
  2. export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  3. export PATH=$PATH:$JAVA_HOME/bin

添加环境变量之后,执行source /etc/profile,让环境变量生效

2. 准备好要安装的spring boot应用程序

2.1 要想安装成功,尤其要注意pom文件的有关插件的配置。正确示例如下:

  1. <build>
  2. <plugins>
  3. <plugin>
  4. <groupId>org.springframework.boot</groupId>
  5. <artifactId>spring-boot-maven-plugin</artifactId>
  6. <configuration>
  7. <mainClass>com.itsherman.dcm.Application</mainClass>
  8. <executable>true</executable>
  9. </configuration>
  10. <executions>
  11. <execution>
  12. <goals>
  13. <goal>repackage</goal>
  14. </goals>
  15. </execution>
  16. </executions>
  17. </plugin>
  18. </plugins>
  19. </build>

如果只单单声明了spring-boot-maven-plugin插件,忽略了后面的配置项,那么很可能你构建的程序包(jar)移植过去启动不成功。报找不到主菜单属性错误。

上面的问题主要是因为构建的可执行jar包中有一个META_INF文件夹,该文件夹下的MANIFEST.MF文件描述了改程序包的主要信息,其中缺少了Main-Class的一行。解决办法是我们可以手动加上,或者按照上面的配置,尤其不能缺少execution的配置项,然后重新执行mvn install。重新生成jar包以后通过winrar工具打开,检查MANIFEST.MF文件的信息。

一般完整的文件信息如下:

  1. Manifest-Version: 1.0
  2. Archiver-Version: Plexus Archiver
  3. Built-By: Sherman
  4. Start-Class: com.itsherman.dcm.Application
  5. Spring-Boot-Classes: BOOT-INF/classes/
  6. Spring-Boot-Lib: BOOT-INF/lib/
  7. Spring-Boot-Version: 2.1.5.RELEASE
  8. Created-By: Apache Maven 3.6.0
  9. Build-Jdk: 1.8.0_172
  10. Main-Class: org.springframework.boot.loader.JarLauncher

没问题之后,可以尝试在本地使用java -jar myapp.jar 命令执行一下

3. 通过xftp等文件移植工具将jar包移植到【1】 步骤的虚拟机上

4. 在虚拟机上 /etc/systemd/system 下编写服务的配置文件,参考实例如下:

  1. [Unit]
  2. Description=myapp
  3. After=syslog.target
  4. [Service]
  5. User=hadoop
  6. ExecStart=/var/java/jdk1.8.0_211/bin/java -jar /home/hadoop/myapp/dev-manager.jar
  7. SuccessExitStatus=143
  8. [Install]
  9. 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应用的教程详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对w3xue网站的支持!

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号