Linux

简介: 本文介绍如何将一个简单的SpringBoot应用打包并部署到Linux服务器。内容包括项目搭建、JAR包打包、JDK安装配置、应用上传与启动,以及通过心跳接口验证服务是否正常运行的完整流程,适用于Java应用的Linux部署初学者。

1.系统打包

为方便测试,这里我以一个简单的SpringBoot工程为例,工程中预留了一个心跳健康检查接口

即后续可以通过访问这个接口,感知应用是否健康,如果有正常返回即说明工程成功部署

工程搭建

如不想0-1搭建,也可直接采用这个:📎LinuxDemo.zip

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.yzxb</groupId>
    <artifactId>linux</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>linux</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>1.8</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <spring-boot.version>2.6.13</spring-boot.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring-boot.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <build>
        <finalName>linuxDemo</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>${spring-boot.version}</version>
                <configuration>
                    <mainClass>cn.yzxb.linux.LinuxApplication</mainClass>
                </configuration>
                <executions>
                    <execution>
                        <id>repackage</id>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

启动类

package cn.yzxb.linux;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class LinuxApplication {
    public static void main(String[] args) {
        SpringApplication.run(LinuxApplication.class, args);
        System.out.println("Linux run success");
    }
}

controller

package cn.yzxb.linux.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("heart")
public class LinuxController {
    @GetMapping
    public String heartBeat() {
        return "I'm OK";
    }
}

应用打包

2.上传应用

找到上述打包路径所在的jar文件,借助于xshell或finalshell等工具,上传至自己指定的路径即可

应用启动前,请确保你已正确安装对应版本的JDK,如未安装可参照下述操作

1.上传JDK

📎jdk-8u271-linux-x64.tar.gz

2.安装JDK

  • 在jdk所在目录解压即可:tar -zxvf jdk-8u271-linux-x64.tar.gz

3.配置JAVA_HOME(注意JAVA_HOME路径)

  • vim /etc/profile

export JAVA_HOME=/tmp/linux/jdk1.8.0_271

export JRE_HOME=${JAVA_HOME}/jre

export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH

export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin

export PATH=$PATH:${JAVA_PATH}

  • source /etc/profile

4.验证JDK

  • source /etc/profile

3.启动应用

4.验证心跳

相关文章
|
1月前
|
Shell Linux 测试技术
Linux Shell循环详解(从零开始掌握Shell脚本中的循环结构)
本文介绍Linux Shell脚本中for和while循环的基本语法与应用,帮助新手掌握自动化任务处理技巧,提升脚本编写效率。
|
2月前
|
缓存 Windows
彻底卸载软件且不留痕!卸载+清理+启动项优化,彻底清理残留信息
一款小巧高效的卸载工具,仅3.85M,主打彻底清理软件残留文件、注册表、服务等。支持强制卸载、应用商店程序移除、浏览器扩展管理、注册表清理、垃圾文件扫描及空文件夹清理,并提供文件粉碎、快捷方式修复等功能,界面简洁且可换肤,是系统清理的得力助手。
289 6
|
2月前
|
云栖大会
阿里云产品九月刊来啦
2025云栖大会重磅合集,阿里云各产品重大升级发布
180 23
|
2月前
|
机器学习/深度学习 编解码 文字识别
医疗票据OCR图像预处理:印章干扰过滤方案与代码实现
医疗票据OCR技术能自动提取票据中的关键信息,但在实际应用中面临多重挑战。首先,票据版式多样,不同医院、地区的格式差异大,需借助动态模板匹配技术来应对。其次,图像质量参差不齐,存在褶皱、模糊、倾斜、印章遮挡等问题,常通过超分辨率重建和图像修复算法处理。此外,手写体识别、复杂业务逻辑理解(如医疗术语和费用规则)以及数据安全与隐私合规要求也是技术难点。 为应对这些挑战,快瞳系统采用“OCR基础识别 + NLP语义修正”的混合架构,并结合深度学习模型(如CRNN、Transformer)来提升准确率和泛化能力。该技术能显著提升医保报销、保险理赔等场景的效率,是推动医疗信息数字化管理的重要工具。
|
1月前
|
JavaScript 安全 前端开发
智能随访系统源码,如何使用Java Spring Boot,Vue,Ant Design快速开发一套医院随访系统
基于Spring Boot + Vue + Ant Design Vue技术栈开发的医疗随访系统,涵盖患者管理、随访计划与执行、统计报表及系统管理模块。前后端分离架构,支持多渠道随访,数据安全可控,具备良好的扩展性与开发效率。
173 0
|
7天前
|
缓存 NoSQL Redis
千万级数据表的count(*)查询优化
针对千万级数据表`user_factor_auth_record`的COUNT查询性能问题,可通过“避免实时计数、独立计数表、Redis缓存”三大方案优化。优先从业务层面取消总条数展示,减轻数据库压力;若需精确值,可借助事务维护独立计数表,或定时缓存至Redis,分摊开销、提升查询效率。
77 5
|
5天前
|
人工智能 安全 搜索推荐
钉钉发布全球首个工作智能操作系统Agent OS,专为AI打造
钉钉发布AI钉钉1.1“木兰”版本,推出全球首个为AI打造的工作智能操作系统Agent OS,带来DingTalk Real、钉钉ONE等创新产品,全面升级AI搜问、AI表格、AI听记等应用,开启人与AI协同的全新工作方式。
78 0
钉钉发布全球首个工作智能操作系统Agent OS,专为AI打造
|
1月前
|
存储 Web App开发 前端开发
新手如何建站.新手建站的全流程
建站是通过整合域名、服务器等要素搭建可访问数字平台的过程,分自助建站、CMS系统和代码开发三类工具。核心流程包括需求规划、域名注册(实名认证)、服务器配置(国内需ICP备案),搭建后填充内容并测试优化,解析域名上线,做好后续维护。
228 10
|
27天前
|
Oracle 关系型数据库 Linux
Oracle Linux 10.1 发布 - Oracle 提供支持 RHEL 兼容发行版
Oracle Linux 10.1 发布 - Oracle 提供支持 RHEL 兼容发行版
91 0
Oracle Linux 10.1 发布 - Oracle 提供支持 RHEL 兼容发行版
|
1月前
|
缓存 网络协议 Linux
Linux系统下 nslookup命令的基本使用
Linux系统下 nslookup命令的基本使用
1192 3
Linux系统下 nslookup命令的基本使用