jar包和war包的区别;项目打包成jar或者war且运行在Linux上的tomcat

简介: jar包和war包的区别;项目打包成jar或者war且运行在Linux上的tomcat

jar包和war包的区别:

war包:通常是web应用后,例如网站,打成包部署到容器(可以是tomcat)中。含有包括WEB-INF包。war包通常就是放在tomcat包的/webapps下然后自动编译和运行。


jar包:通常是开发时要引用的类,趋向功能性。实现一个功能。而打成jar包则可以直接通过命令运行。但也要声明main_class主类来启动。


项目打包

打包成jar包

1.使用命令行:

找一个目录,然后目录里放你的项目,用cmd窗口进入到该目录下,然后输出命令,注意最后面是有个 .不要漏了


jar cvf 目录名.jar -C 目录名 .  

19.png可以看到打包成功

20.png

2.使用Maven

可以看下方war包的步骤,是一致的

但pom里面换成

<packaging>jar</packaging>

打包成war包

1.使用命令行:

同样跟jar包一样进入到对应目录,然后运行

jar -cvf 项目名.war *

21.png
22.png

2.使用Maven:

在pom文件加上,加上记得点一下右上角的按钮刷新一下

<packaging>war</packaging>

23.png先clean一下文件,清除没用的信息

25.png
找到package包然后右键点第一个

26.png
27.png
打包好的文件再target里面

28.png
!!!注意:总的来说不建议用命令行来打包,因为有些项目你可能没有META_INF这个文件和里面的MANIFEST.MF,而Maven可以帮你很好的打包成一个可用的文件


Linux上的Tomcat运行jar或者war

运行war包

首先进入到Tomcat的webapps的包  

29.png上传你的war包到webapps目录

30.png
再回到Tomcat的bin文件执行下方命令运行tomcat

sh startup.sh

31.png 如果已经启动了tomcat的可以先查看对应进程然后kill掉

ps -ef|grep tomcat

32.png然后访问你的地址:ip:端口/项目名

33.png

运行jar包

将jar包上传到linux的某个目录,可以选择是/usr/local下新建一个testJar包


然后运行命令,然后直接访问即可 :


java -jar XXX.jar   Ctrl + c 或直接关闭窗口,程序终止

java -jar XXX.jar &    窗口关闭时,程序终止

nohup java -jar XXX.jar &    退出或终端关闭时,程序执行

nohup java -jar XXX.jar >temp.out &   将日志输出重定向到temp.out文件,使用ctrl+c中断或者关闭窗口都不会中断程序的执行

nohup java -jar XXX.jar > /dev/null 2>&1 &  不生成日志,把标准输出和错误输出全部重定向到/dev/null中,也就是将产生的所有信息丢弃.


停止进程命令:


netstat -lnp|grep  查看端口号,一般是看自己的项目端口,如tomcat一般是8080

kill -9 PID  或者 kill PID 结束进程

 

目录
相关文章
|
2月前
|
前端开发 Unix Linux
揭秘 Electron 的 Linux 打包过程:你知道背后发生了什么吗?
本文详细介绍了 `electron-builder` 在 Linux 平台上如何打包 Electron 应用程序,涵盖了 AppImage、Flatpak、Snap 等多种格式的打包原理和具体实现。文章从初始化 `LinuxPackager` 到创建各种目标格式的包,详细解析了每个步骤的代码逻辑和关键方法,帮助开发者更好地理解和使用 `electron-builder` 进行 Linux 应用的打包。
189 2
揭秘 Electron 的 Linux 打包过程:你知道背后发生了什么吗?
|
2月前
|
存储 数据可视化 Java
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!
如何在Linux系统下部署和运行Java项目jar包,包括传输文件到Linux、使用nohup命令运行jar包、查看端口状态、杀死进程和查看项目运行状态,以及如何解决“没有主清单属性”的错误。
664 1
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!
|
2月前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
470 3
|
2月前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
581 3
|
2月前
|
算法 Java Linux
java制作海报五:java 后端整合 echarts 画出 折线图,项目放在linux上,echarts图上不显示中文,显示方框口口口
这篇文章介绍了如何在Java后端整合ECharts库来绘制折线图,并讨论了在Linux环境下ECharts图表中文显示问题。
52 1
|
2月前
|
前端开发 JavaScript 应用服务中间件
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
本文是一篇详细的教程,介绍了如何在Linux系统上安装和配置nginx,以及如何将打包好的前端项目(如Vue或React)上传和部署到服务器上,包括了常见的错误处理方法。
795 0
linux安装nginx和前端部署vue项目(实际测试react项目也可以)
|
4月前
|
应用服务中间件 Linux 网络安全
【Azure 应用服务】App Service for Linux 环境中为Tomcat页面修改默认的Azure 404页面
【Azure 应用服务】App Service for Linux 环境中为Tomcat页面修改默认的Azure 404页面
|
7月前
|
NoSQL Java Linux
Linux常用命令(文件目录操作、拷贝移动、打包压缩、文本编辑、查找)
Linux常用命令(文件目录操作、拷贝移动、打包压缩、文本编辑、查找)
|
7月前
|
Linux
linux(二十七)打包压缩命令bzip2~
linux(二十七)打包压缩命令bzip2~
67 0
|
4月前
|
Linux
在Linux中,列出几种常见打包工具并写相应解压缩参数。
在Linux中,列出几种常见打包工具并写相应解压缩参数。