使用 nohup 部署和后台运行Java 项目

简介: 使用 nohup 部署和后台运行Java 项目

使用 nohup 部署和后台运行 Java 项目

1. 下载示例项目

首先,我们选择了Spring官方的PetClinic项目作为示例。你可以通过以下命令将项目代码下载到本地:

git clone https://github.com/spring-projects/spring-petclinic.git

  • 这个项目本地运行是这样的

2. 构建项目

进入项目目录,使用Maven或Gradle进行项目构建。如果使用Maven,执行以下命令:

cd spring-petclinic
./mvnw clean package

如果使用Gradle,执行:

cd spring-petclinic
./gradlew clean build

如果有IDEA的话可以按照下面的操作进行

以maven形式打开项目

重新加载一次maven

  • 先clean一下

  • 再package

  • 这里有打包好的jar包

3. 上传 JAR 文件到服务器

将构建好的JAR文件上传至部署服务器。可以使用scp或其他文件传输工具:

scp target/spring-petclinic.jar user@your_server_ip:/path/on/server

确保替换 user 为服务器用户名,your_server_ip 为服务器IP地址,/path/on/server 为服务器上的存储路径。

  • 也可以直接使用xshell
  • 直接拖动jar包到xshell的jar文件夹下面

4. 使用 nohup 启动 Java 项目

输入nohup java -jar xxx.jar >> api.log &可以运行

  • 可以看到生成了一个api.log日志文件,通过cat命令可以看我们这个项目运行时候的状态,很显然报错了,这个错误是springboot版本的问题,修改一下重新打包就好了。
    解决方案看这篇文章:java: 无法访问org.springframework.boot.SpringApplication解决办法

  • 小注意
    一般在使用nohup之前先用java -jar运行一下jar包,看一下可以正常运行吗,如果不可以记得修改一下代码,java -jar虽然是java原生的运行jar包的方式,但是他只能够在命令框开启的时候运行,关闭了就停止了。

5. 检查应用状态

使用 ps 命令检查Java进程是否正在运行:

ps aux | grep spring-petclinic.jar

相关文章
|
10天前
|
JavaScript Java 测试技术
基于Java+SpringBoot+Vue实现的车辆充电桩系统设计与实现(系统源码+文档+部署讲解等)
面向大学生毕业选题、开题、任务书、程序设计开发、论文辅导提供一站式服务。主要服务:程序设计开发、代码修改、成品部署、支持定制、论文辅导,助力毕设!
27 6
|
11天前
|
前端开发 Java 程序员
菜鸟之路day02-04拼图小游戏开发一一JAVA基础综合项目
本项目基于黑马程序员教程,涵盖面向对象进阶、继承、多态等知识,历时约24小时完成。项目去除了登录和注册模块,专注于单机游戏体验。使用Git进行版本管理,代码托管于Gitee。项目包含窗体搭建、事件监听、图片加载与打乱、交互逻辑实现、菜单功能及美化界面等内容。通过此项目,巩固了Java基础并提升了实际开发能力。 仓库地址:[https://gitee.com/zhang-tenglan/puzzlegame.git](https://gitee.com/zhang-tenglan/puzzlegame.git)
35 6
|
2月前
|
Java Maven
java项目中jar启动执行日志报错:no main manifest attribute, in /www/wwwroot/snow-server/z-server.jar-jar打包的大小明显小于正常大小如何解决
在Java项目中,启动jar包时遇到“no main manifest attribute”错误,且打包大小明显偏小。常见原因包括:1) Maven配置中跳过主程序打包;2) 缺少Manifest文件或Main-Class属性。解决方案如下:
java项目中jar启动执行日志报错:no main manifest attribute, in /www/wwwroot/snow-server/z-server.jar-jar打包的大小明显小于正常大小如何解决
|
14天前
|
算法 搜索推荐 Java
【潜意识Java】深度解析黑马项目《苍穹外卖》与蓝桥杯算法的结合问题
本文探讨了如何将算法学习与实际项目相结合,以提升编程竞赛中的解题能力。通过《苍穹外卖》项目,介绍了订单配送路径规划(基于动态规划解决旅行商问题)和商品推荐系统(基于贪心算法)。这些实例不仅展示了算法在实际业务中的应用,还帮助读者更好地准备蓝桥杯等编程竞赛。结合具体代码实现和解析,文章详细说明了如何运用算法优化项目功能,提高解决问题的能力。
49 6
|
14天前
|
Java 数据库连接 数据库
【潜意识Java】深度分析黑马项目《苍穹外卖》在Java学习中的重要性
《苍穹外卖》项目对Java学习至关重要。它涵盖了用户管理、商品查询、订单处理等模块,涉及Spring Boot、MyBatis、Redis等技术栈。
43 4
|
25天前
|
Java Windows
【Azure Function】部署Java Function失败:报错deploy [ERROR] Status code 401和警告 'China North 3' may not be a valid region
1:deploy [ERROR] Status code 401, (empty body). 2: China North 3 may not be a valid region,please refer to https://aka.ms/maven_function_configuration#supported-regions for values. 3:  <azure.functions.maven.plugin.version>1.36.0</azure.functions.maven.plugin.version>
34 11
|
1月前
|
存储 Java BI
java怎么统计每个项目下的每个类别的数据
通过本文,我们详细介绍了如何在Java中统计每个项目下的每个类别的数据,包括数据模型设计、数据存储和统计方法。通过定义 `Category`和 `Project`类,并使用 `ProjectManager`类进行管理,可以轻松实现项目和类别的数据统计。希望本文能够帮助您理解和实现类似的统计需求。
81 17
|
2月前
|
NoSQL Java 关系型数据库
Liunx部署java项目Tomcat、Redis、Mysql教程
本文详细介绍了如何在 Linux 服务器上安装和配置 Tomcat、MySQL 和 Redis,并部署 Java 项目。通过这些步骤,您可以搭建一个高效稳定的 Java 应用运行环境。希望本文能为您在实际操作中提供有价值的参考。
158 26
|
3月前
|
XML Java 测试技术
从零开始学 Maven:简化 Java 项目的构建与管理
Maven 是一个由 Apache 软件基金会开发的项目管理和构建自动化工具。它主要用在 Java 项目中,但也可以用于其他类型的项目。
93 1
从零开始学 Maven:简化 Java 项目的构建与管理
|
3月前
|
Java
Java项目中高精度数值计算:为何BigDecimal优于Double
在Java项目开发中,涉及金额计算、面积计算等高精度数值操作时,应选择 `BigDecimal` 而非 `Double`。`BigDecimal` 提供任意精度的小数运算、多种舍入模式和良好的可读性,确保计算结果的准确性和可靠性。例如,在金额计算中,`BigDecimal` 可以精确到小数点后两位,而 `Double` 可能因精度问题导致结果不准确。