将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

时间:2022-08-22 18:00:08

一、概述

java项目有两种架构,一种是 B/S 架构的,一种是 C/S 架构的。

对于 B/S 架构来说,我们常见的 java ee 即是 B/S 架构,通常,开发人员会在本地进行开发,然后将项目打包成 war 文件,上传至服务器,供调用。

而对于 B/S 架构来说,通常即是里面有个主方法,就是我们常写的 java 项目/程序。通常,开发完之后,将项目打包成 jar 包,随后上传至服务器,供调用。

本文,针对后者进行介绍。

二、需求描述

一个 java 项目,分包存放多个 java 文件,java 文件中,有依赖第三方库(从外部导入的 jar 包)。其中,主函数(项目入口)位于项目的一个包内,主函数必须带有四个参数。

三、导出 jar 包步骤

3.1 确保正确地写完项目

这一步就不消说了。

3.2 选中项目,点击右键

鼠标单击项目名称,选中后u,单击右键,随即弹出菜单列表

将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

3.3 选择export

在弹出的列表中,选择"Export...",随即弹出 Export 的窗口

将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

3.4 选择导出可运行的 jar 文件

在弹出的 Export 窗口中,点开 java ,选择 Runable JAR file 选项。

将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

  • JAR file,单纯只是将项目打包成 jar 包,一般用于java lib的导出,用于给其他人依赖开发使用
  • Runable JAR file,顾名思义,可运行的 jar 包,能够被运行(因为随后要指定项目入口)

选择 Runable JAR file 选项,点击 Next ,弹出 Runable JAR file Export 窗口

3.4 配置 JAR 包

在弹出的 Runable JAR file Export 窗口中,

将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

  • 修改 Launch configuration,选择为你的项目的入口,即有主方法的类
  • Export destination ,选择你想要导出的目录
  • Library handling,几个选项顾名思义,不做赘述
  • 点击 Next

3.5 完成

导出过程可能会消耗一定时间,地下有绿色进度条提醒进度。等待片刻,即可完成整个过程。

将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

若项目有依赖第三方包,则有可能会弹出以下警示框,点击 OK 即可。

将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

由于项目中可能存在一些不规范之初,在完成此步骤后,也许会弹出一个警告框。点击 Details 可查看详情,点击 OK 进入导出过程。

将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

在 3.4 步骤中选择的目标目录中,即可看到导出的 jar 包。

将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

四、可运行 JAR 文件结构解析

4.1 解压上述步骤得到的 JAR 包

文件目录结构见下图:

将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

  • META-INF 文件夹存放着项目的配置信息:
    • maven依赖(如果有的话, META-INF 中包含了 maven 文件夹)
    • 项目的 MANIFEST 信息(存放在 META-INF/MANIFEST.MF )Manifest-Version、Class-Path、Main-Class,注意它们后面的内容与冒号之间均有一个空格,这个空格必不可少
  • 其他文件夹都存放着 .class 文件(结构类似exlipse项目中的bin目录),若有第三方依赖,则也有第三方包的 .class 文件

将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

四、服务器上运行

将文件上传至服务器的步骤,本文就不赘述了。此处简单讲解一下运行过程。

进入可运行的 jar 包目录,此处打开命令行,键入命令java -jar JSTUNServer.jar 5000 192.168.2.1 5001 192.168.2.3java -jar [jar包] [参数1 参数2 参数3...]),敲回车,即可运行。

将 java 项目打包成可运行的 jar 包(main 函数带参数),并上传到 linux 服务器上运行

由于我选用的实例代码需要特殊的环境,此处报的错与本文论述的内容无关。此处就证明了上述过程的正确性。