使用 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

相关文章
|
2月前
|
Java
使用IDEA创建项目运行我的第一个JAVA文件输出Helloword
本文介绍了如何使用IDEA(IntelliJ IDEA)创建一个新的Java项目,并运行一个简单的Java程序输出"Hello Word"。文章详细展示了创建项目的步骤,包括选择JDK版本、设置项目名称和路径、创建包和类,以及编写和运行代码。最后,还展示了如何通过IDEA的运行功能来执行程序并查看输出结果。
101 4
使用IDEA创建项目运行我的第一个JAVA文件输出Helloword
|
1月前
|
关系型数据库 MySQL Java
【MySQL+java+jpa】MySQL数据返回项目的感悟
【MySQL+java+jpa】MySQL数据返回项目的感悟
41 1
|
1月前
|
编解码 Oracle Java
java9到java17的新特性学习--github新项目
本文宣布了一个名为"JavaLearnNote"的新GitHub项目,该项目旨在帮助Java开发者深入理解和掌握从Java 9到Java 17的每个版本的关键新特性,并通过实战演示、社区支持和持续更新来促进学习。
70 3
|
2月前
|
XML 存储 JSON
Java程序部署
Java程序部署
|
3月前
|
Kubernetes jenkins 持续交付
从代码到k8s部署应有尽有系列-java源码之String详解
本文详细介绍了一个基于 `gitlab + jenkins + harbor + k8s` 的自动化部署环境搭建流程。其中,`gitlab` 用于代码托管和 CI,`jenkins` 负责 CD 发布,`harbor` 作为镜像仓库,而 `k8s` 则用于运行服务。文章具体介绍了每项工具的部署步骤,并提供了详细的配置信息和示例代码。此外,还特别指出中间件(如 MySQL、Redis 等)应部署在 K8s 之外,以确保服务稳定性和独立性。通过本文,读者可以学习如何在本地环境中搭建一套完整的自动化部署系统。
69 0
|
3天前
|
前端开发 Java 数据库
如何实现一个项目,小白做项目-java
本教程涵盖了从数据库到AJAX的多个知识点,并详细介绍了项目实现过程,包括静态页面分析、数据库创建、项目结构搭建、JSP转换及各层代码编写。最后,通过通用分页和优化Servlet来提升代码质量。
11 1
|
26天前
|
JavaScript 前端开发 Java
解决跨域问题大集合:vue-cli项目 和 java/springboot(6种方式) 两端解决(完美解决)
这篇文章详细介绍了如何在前端Vue项目和后端Spring Boot项目中通过多种方式解决跨域问题。
289 1
解决跨域问题大集合:vue-cli项目 和 java/springboot(6种方式) 两端解决(完美解决)
|
10天前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
1月前
|
缓存 Java Maven
java: 警告: 源发行版 11 需要目标发行版 11 无效的目标发行版: 11 jdk版本不符,项目jdk版本为其他版本
如何解决Java项目中因JDK版本不匹配导致的编译错误,包括修改`pom.xml`文件、调整项目结构、设置Maven和JDK版本,以及清理缓存和重启IDEA。
38 1
java: 警告: 源发行版 11 需要目标发行版 11 无效的目标发行版: 11 jdk版本不符,项目jdk版本为其他版本
|
15天前
|
SQL IDE Java
入门Cloud Toolkit:简化你的Java应用开发与部署流程
【10月更文挑战第19天】作为一名长期从事Java开发的程序员,我一直致力于寻找能够简化日常开发工作的工具。在众多工具中,阿里巴巴推出的Cloud Toolkit引起了我的注意。这款免费的插件旨在帮助开发者更轻松地进行开发、测试及部署工作,尤其是在与云服务交互时表现尤为出色。本文将从个人的角度出发,介绍Cloud Toolkit的基本功能及其使用技巧,希望能帮助初学者快速上手这款实用工具。
14 1