部署Spring Boot项目

这篇具有很好参考价值的文章主要介绍了部署Spring Boot项目。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

上传jar包

之前在新建Spring Boot项目[1]使用mvn install的方式,已经构建出jar包。

通过scp或rz/sz,将该jar包上传到服务器

部署Spring Boot项目,后端

执行java -jar hello-0.0.1-SNAPSHOT.jar,发生如下报错:

部署Spring Boot项目,后端
Exception in thread "main" java.lang.UnsupportedClassVersionError: tech/dashen/hello/HelloApplication has been compiled by a more recent version of the Java Runtime (class file version 55.0)this version of the Java Runtime only recognizes class file versions up to 52.0
 at java.lang.ClassLoader.defineClass1(Native Method)
 at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
 at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
 at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
 at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
 at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
 at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
 at java.security.AccessController.doPrivileged(Native Method)
 at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
 at org.springframework.boot.loader.LaunchedURLClassLoader.loadClass(LaunchedURLClassLoader.java:151)
 at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
 at java.lang.Class.forName0(Native Method)
 at java.lang.Class.forName(Class.java:348)
 at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:46)
 at org.springframework.boot.loader.Launcher.launch(Launcher.java:108)
 at org.springframework.boot.loader.Launcher.launch(Launcher.java:58)
 at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:88)

这是由于编译环境运行环境不一致导致:

本机执行 java -version

openjdk version "17.0.2" 2022-01-18
OpenJDK Runtime Environment (build 17.0.2+8-86)
OpenJDK 64-Bit Server VM (build 17.0.2+8-86, mixed mode, sharing)

服务器上执行 java -version

java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)

服务器 安装/更新Java版本

通过cat .bashrc查看之前Java的配置:

#java
export JAVA_HOME=/usr/local/java/jdk1.8.0_211
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

切换到/usr/local/java下:

部署Spring Boot项目,后端

可发现之前是使用直接下载&编译的方式安装

决定这次依然不使用apt-get的方式。

此处[2] 找到对应平台的Java 17,复制下载地址

部署Spring Boot项目,后端

使用wget + 下载地址下载到当前目录,

部署Spring Boot项目,后端

sudo tar -zxvf jdk-17_linux-x64_bin.tar.gz,解压出jdk-17.0.2文件夹


修改.bashrc中Java的路径:

#java
export JAVA_HOME=/usr/local/java/jdk-17.0.2
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
部署Spring Boot项目,后端

再去之前的目录下执行java -jar hello-0.0.1-SNAPSHOT.jar命令

部署Spring Boot项目,后端

部署Spring Boot项目,后端

可参考[3]nohup java -jar hello-0.0.1-SNAPSHOT.jar >temp.txt &,让进程在后台运行。并会把日志文件输入到指定的temp.txt中


服务器 放开8080端口

参考腾讯云服务器安全组设置开放8080端口[4]

部署Spring Boot项目,后端

再请求服务器公网ip:8080/cui,如预期

部署Spring Boot项目,后端



关于Java的版本

依据 一文搞懂JDK8与Java1.8的区别[5],

从JDK1.5/JDK5开始,命名方式由之前的1.x,改成了x

故而DK1.8/JDK8是新旧命令方式导致的同一个东西的不同称谓。

Java8、JDK8、JDK1.8都是同一个东西

部署Spring Boot项目,后端

当前最新的版本是 Java 17

Java版本历史

部署Spring Boot项目,后端

参考资料

[1]

新建Spring Boot项目: https://dashen.tech/2022/02/01/%E6%96%B0%E5%BB%BASpring-Boot%E9%A1%B9%E7%9B%AE/

[2]

此处: https://www.oracle.com/java/technologies/downloads/#jdk17-linux

[3]

此: https://blog.csdn.net/qq_22638399/article/details/81506448

[4]

腾讯云服务器安全组设置开放8080端口: https://www.txyfwq.com/anquanzu/8080duankou.html

[5]

一文搞懂JDK8与Java1.8的区别: https://blog.csdn.net/qq_44895681/article/details/105365655

本文由 mdnice 多平台发布文章来源地址https://www.toymoban.com/news/detail-683330.html

到了这里,关于部署Spring Boot项目的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux 部署Vue+Spring Boot项目

    部署Vue+ Spring Boot项目 输入客户端进行测试: 设置redis密码(临时方法,重启redis后密码会失效,需要重新设置): 需要永久配置密码的话就去redis.conf的配置文件中找到requirepass这个参数,如下配置: 修改redis.conf配置文件,requirepass foobared,requirepass 123 指定密码123,重启后就

    2024年02月16日
    浏览(50)
  • Dockerfile中编译、打包、部署spring boot项目

            Dockerfile是自动构建docker镜像的配置文件,将镜像构建过程通过指令的方式定义在Dockerfile中。配合docker build命令行可以实现自动化的Docker镜像的构建。         我们在学习一门语言或文档语法的时候,最快的学习方式就是看别人是怎么写的。这里这个“「别人

    2024年02月09日
    浏览(55)
  • IDEA快速部署Spring Boot 项目到Docker

    我们通常使用TCP的方式连接Docker,所以我们需要配置Docker并开放端口,如果是本地虚拟机,可以简单使用http的方式进行连接(不建议),如果你是远程服务器,请 务必采用安全的连接方式(https) ; 自己的虚拟机 如果是自己的虚拟机,可以不需要创建CA证书。可以使用 http://ip:端

    2023年04月10日
    浏览(44)
  • Docker 部署 Spring Boot 项目(含 MySQL + Redis )

    注意事项:如果需要将 Spring Boot 项目的日志文件挂载到本地,则在打包前需要先在 yml 进行如下配置: 这里的 info 指的是日志等级,可以根据需要进行修改,日志等级主要有以下几种: trace :最低的日志级别,用于记录非常详细的信息,通常仅在诊断问题时使用。 debug :用

    2024年01月21日
    浏览(45)
  • 【Java开发】 Spring 11 :Spring Boot 项目部署至云服务器

    Spring Boot 项目开发结束后的工作便是运维,简单来说需要配置 Web 运行参数和项目部署两大工作,本文将尽可能详细地给大家讲全! 目录 1 定制 Web 容器运行参数 1.1 运行参数介绍 1.2 项目搭建 ① 通过 IDEA Spring Initializr 创建项目 ② 添加 Spring Web 等依赖 ③ 编写 controller 层的

    2023年04月23日
    浏览(60)
  • Docker和Kubernetes部署Spring Boot项目:如何灵活修改配置文件?

      大家好,我是G探险者,今天我们来聊一下通过容器化部署的springboot项目,如何灵活的修改配置文件。 有同事问我,我们的springboot项目是容器化部署,使用的是K8S容器编排平台,部署上去后,修改项目里面的配置不太方便,还需要进入到容器内部进行修改,太麻烦了,怎么

    2024年02月10日
    浏览(43)
  • Spring Boot+Vue前后端分离项目如何部署到服务器

    🌟 前言 欢迎来到我的技术小宇宙!🌌 这里不仅是我记录技术点滴的后花园,也是我分享学习心得和项目经验的乐园。📚 无论你是技术小白还是资深大牛,这里总有一些内容能触动你的好奇心。🔍 🤖 洛可可白 :个人主页 🔥 个人专栏 :✅前端技术 ✅后端技术 🏠 个人

    2024年04月11日
    浏览(61)
  • 将Spring Boot项目打包部署到阿里云linux服务器

    首先 你要保证自己的服务器上有java环境 如果没有可以参考我的文章 linux服务器中安装java JDK1.8版本 然后 我们打开我们的Spring Boot项目 双击 package 生命周期进行打包 打包完成之后 我们找到 target 下面会有一个jar包 然后 我们右键它 如下图操作 系统就会帮你打开它所在的目录

    2024年02月16日
    浏览(73)
  • 一文看懂 win 10安装docker并部署spring boot项目

    目录 1、下载docker安装包 2、win 10环境准备 3、安装Docker Desktop 4、验证Docker安装 5、部署spring boot项目  5.1、pom.xml中添加docker依赖 5.2、添加Dockerfile文件 5.3、镜像文件 5.4、验证 Docker Desktop是Docker在win 10操作系统上的安装方式,首先到Docker Desktop官网下载安装包,安装地址Instal

    2024年02月07日
    浏览(55)
  • 2023 最新版IntelliJ IDEA 2023.1创建Java Web前(vue3)后端(spring-boot3)分离 项目详细步骤(图文详解)

    2023 最新版IntelliJ IDEA 2023.1创建Java Web 项目详细步骤(图文详解) 本篇使用当前Java Web开发主流的spring-boot3框架来创建一个Java前后端分离的项目,前端使用的也是目前前端主流的vue3进行一个简单的项目搭建,让你距离Java全栈开发更近一步 🏴‍☠️。 使用版本: “17.0.1”

    2024年02月12日
    浏览(88)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包