震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!

简介: 如何在Linux系统下部署和运行Java项目jar包,包括传输文件到Linux、使用nohup命令运行jar包、查看端口状态、杀死进程和查看项目运行状态,以及如何解决“没有主清单属性”的错误。

1、打开咱的linux系统

恭喜您,已经成功一半了!

2、找到咱想放置jar包的位置,哪里都行

注: 进入文件夹操作 cd 文件夹名 例如: cd project

查看当前文件夹下的文件 ls -l

3、传输 jar包/文件 到linux上

拖拽,可视化传输都可以

上传成功:

4、运行/部署 jar包 nohup java -jar jar包文件名 &

使用 nohup java -jar jar包文件名 & 命令

例如:nohup java -jar java_chatroom-0.0.1-SNAPSHOT.jar &

注意:此处可能会出现 nohup: ignoring input and appending output to ‘nohup.out’

按空格就好,他的意思是建立一个 ohup.out 文件来存储咱的日志信息

当服务很多时,想区分好日志,可以在部署jar包时指定好日志文件

nohup java -jar jar包名 > output.log 2>&1 &
  1. nohup: 表示即使终端会话结束,进程也会继续运行。
  2. jar包名: 启动 Java 应用程序。
  3. > output.log: 将标准输出(stdout)重定向到 output.log 文件中。
  4. 2>&1: 将标准错误输出(stderr)重定向到与标准输出相同的地方,即 output.log 文件。
  5. &: 将命令放入后台运行。

5、补充知识

5.1 查看端口状态

netstat -anp | grep 8080

黄框内 8080 为端口号

蓝框内 2500 为进程ID (kill 命令针对的就是进程ID,不是端口号,别弄混)

5.2 杀死进程

kill 进程ID

5.3 查看 jar包/项目运行状态

cat 输出日志的文件名 例如: cat nohup.out

6、报错:没有主清单属性

在pom中添加一个SpringBoot的构建的插件,然后重新运行 package即可。

<build>
  <plugins>
      <plugin>
          <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
  </plugins>
 </build>
相关实践学习
通过日志服务实现云资源OSS的安全审计
本实验介绍如何通过日志服务实现云资源OSS的安全审计。
目录
相关文章
|
11月前
|
安全 Java 持续交付
如何实现上传jar直接部署成功,这篇文章直接带你上手springboot实现jar包热更新!
本文详细讲解了在Spring Boot应用中实现Jar包热更新的实践方法。通过自定义类加载器(`HotClassLoader`),动态加载和卸载指定目录下的Jar包,结合Spring Bean动态注册机制,使新加载的类能够被Spring容器管理。同时,提供了文件上传接口,方便用户手动触发Jar包更新。文章还强调了安全性、依赖管理和线程安全等注意事项,并给出了测试步骤和总结,帮助开发者高效实现热更新功能,减少服务中断和提升开发效率。
|
10月前
|
Java 关系型数据库 MySQL
在Linux平台上进行JDK、Tomcat、MySQL的安装并部署后端项目
现在,你可以通过访问http://Your_IP:Tomcat_Port/Your_Project访问你的项目了。如果一切顺利,你将看到那绚烂的胜利之光照耀在你的项目之上!
494 41
|
10月前
|
Java Linux
自定义linux脚本用于快速jar包启动、停止、重启
自定义linux脚本用于快速jar包启动、停止、重启
389 29
|
11月前
|
存储 Java Maven
Maven系统级别依赖:解决部署时Jar包缺失问题
以上就是关于Maven系统级别依赖解决部署时Jar包缺失问题的解答,希望对你有所帮助。在软件开发中,遇到问题并解决问题是常态,希望你能够善用这些工具,解决你遇到的问题。
690 28
|
消息中间件 Linux
Linux:进程间通信(共享内存详细讲解以及小项目使用和相关指令、消息队列、信号量)
通过上述讲解和代码示例,您可以理解和实现Linux系统中的进程间通信机制,包括共享内存、消息队列和信号量。这些机制在实际开发中非常重要,能够提高系统的并发处理能力和数据通信效率。希望本文能为您的学习和开发提供实用的指导和帮助。
913 20
|
Ubuntu Linux Go
golang编译成Linux可运行文件
本文介绍了如何在 Linux 上编译和运行 Golang 程序,涵盖了本地编译和交叉编译的步骤。通过这些步骤,您可以轻松地将 Golang 程序编译成适合 Linux 平台的可执行文件,并在目标服务器上运行。掌握这些技巧,可以提高开发和部署 Golang 应用的效率。
2497 14
|
机器学习/深度学习 人工智能 Ubuntu
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
2824 3
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
2777 3
|
运维 Java Shell
Linux非常详细的shell运维脚本一键启动停止状态SpringBoot打成可运行jar包
Linux非常详细的shell运维脚本一键启动停止状态SpringBoot打成可运行jar包
646 0