linux 运行java jar_Linux shell脚本启动jar运行java程序的实例分享
发布日期:2021-06-24 15:42:37 浏览次数:3 分类:技术文章

本文共 973 字,大约阅读时间需要 3 分钟。

写在前面

昨天提了一个问题,最终完美解决问题,特此记录一下。

好了,简单的分享一下过程吧!

从提问的问题中,我已经说明了,这个项目是个中间件,开发完了提供出来的是一个jar包,具体是干嘛的就不说了,最终就是要放在服务器上,启动这个jar。 有的牛牛估计傻了,什么,启动jar? 对的,你没有听错,就是启动jar。

一般来说,在开发工具里面 IDE / eclipse 里面我们启动程序的一个唯一入门就是main方法,那么要启动一个 jar,入口在哪里?

入口一样的也是main方法,只是我们脱离了开发工具,要用命令去执行程序了而已。

在windows中,我们可以在cmd中使用 java -jar XXX 的方式去启动 我们打好的jar。

说到这里,必须说说,在maven中打出来的jar

上面说到可以用 jave -jar 方式启动jar包,但是如果你是用maven进行开发管理的话,默认的打出来的jar包是不能运行的。

如图所示

5f44669d9023f819b9cfa4031178418d.png

这就是原始maven 打出来jar包,使用maven默认的package命令构建的jar包中只包括了工程自身的class文件,并没有包括依赖的jar包。

问题就在这里。

解决方法:

在pom.xml文件中

添加如下代码(问题中也已经写了)

org.apache.maven.plugins

maven-shade-plugin

1.2.1

package

shade

这里写你的运行的类所在的package+className

参考资料链接:maven-assembly-plugin插件的使用说明http://chenzhou123520.iteye.com/blog/1706242 有需要的牛牛自己学习学习

好了,通过以上步骤,就可以生成2jar包

一个为:original-XXX-0.0.1-SNAPSHOT.jar,另一个为:XXX-0.0.1-SNAPSHOT.jar,其中original...jar里只包含了工程自己的class文件,而另外的一个jar包则包含了工程本身以及所有依赖的jar包的class文件。我们只需要使用第二个jar包就可以了。

如图所示

5f44669d9023f819b9cfa4031178418d.png

那么重点来了,jar包问题解决了,丢服务器的启动脚本在哪里?

少年别急,下载我分享的脚本,一探究竟吧!

我是最代码伊成,你值得关注我!

转载地址:https://blog.csdn.net/weixin_33613462/article/details/114068525 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:java clone()用法_Java Clone原理和用法
下一篇:python self cls_Python 中的self, cls, super的使用和理解

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年04月20日 02时53分57秒