首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

linux运行jar包 命令

在Linux系统中运行JAR(Java Archive)文件是一个常见的任务,通常用于部署Java应用程序。以下是关于如何在Linux中运行JAR包的基础概念、相关优势、类型、应用场景以及常见问题的解答。

基础概念

JAR文件是一种归档文件格式,主要用于聚合多个Java类文件、相关的元数据和资源文件到一个文件中,以便于分发和使用。JAR文件可以使用Java的jar命令创建和管理。

相关优势

  1. 便于分发:将所有必要的文件打包成一个文件,便于传输和部署。
  2. 版本控制:可以包含版本信息,便于管理和维护。
  3. 安全性:可以通过签名来验证文件的完整性。
  4. 模块化:支持模块化设计,便于代码复用和扩展。

类型

  • 可执行JAR:包含一个主类(main class),可以直接运行。
  • 库JAR:仅包含类文件,用于其他项目引用。

应用场景

  • Web应用程序:如Spring Boot应用。
  • 桌面应用程序:如JavaFX应用。
  • 命令行工具:如各种脚本工具。

运行JAR包的命令

要在Linux终端中运行一个JAR文件,可以使用以下命令:

代码语言:txt
复制
java -jar your-application.jar

其中,your-application.jar是你要运行的JAR文件的名称。

示例

假设你有一个名为example.jar的可执行JAR文件,你可以这样运行它:

代码语言:txt
复制
java -jar example.jar

常见问题及解决方法

1. 找不到或无法加载主类

原因:JAR文件中没有指定主类,或者主类路径不正确。 解决方法

  • 确保JAR文件的MANIFEST.MF文件中包含正确的Main-Class属性。
  • 使用以下命令查看MANIFEST.MF内容:
  • 使用以下命令查看MANIFEST.MF内容:
  • 如果没有正确设置,可以在创建JAR文件时添加-e选项指定主类,例如:
  • 如果没有正确设置,可以在创建JAR文件时添加-e选项指定主类,例如:

2. 内存不足

原因:应用程序需要的内存超过了默认分配的内存。 解决方法

  • 使用-Xmx-Xms参数调整JVM内存设置,例如:
  • 使用-Xmx-Xms参数调整JVM内存设置,例如:

3. 依赖缺失

原因:JAR文件依赖的其他库未找到。 解决方法

  • 使用Maven或Gradle等构建工具管理依赖,并生成包含所有依赖的“胖JAR”(uber-jar)。
  • 或者,将所有依赖放在一个目录中,并使用-cp参数指定类路径:
  • 或者,将所有依赖放在一个目录中,并使用-cp参数指定类路径:

通过以上步骤,你应该能够在Linux系统中成功运行JAR文件,并解决常见的运行时问题。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Linux 运行jar包命令

方式一: java -jar shareniu.jar 特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 那如何让窗口不锁定?...方式二 java -jar shareniu.jar & &代表在后台运行。 特定:当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行。 继续改进,如何让窗口关闭时,程序仍然运行?...方式三 nohup java -jar shareniu.jar & nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行 当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到...方式四 nohup java -jar shareniu.jar >temp.txt & 解释下 >temp.txt command >out.file command >out.file是将command...可通过jobs命令查看后台运行任务 jobs 那么就会列出所有后台执行的作业,并且每个作业前面都有个编号。 如果想将某个作业调回前台控制,只需要 fg + 编号即可。

6.9K20

linux运行jar包的命令_linux部署jar包的几种方式

要运行java的项目需要先将项目打包成war包或者jar包,打包成war包需要将war包部署到tomcat服务器上才能运行。而打包成jar包可以直接使用java命令执行。...在linux系统中运行jar包主要有以下几种方式。 一、java -jar XXX.jar 这是最基本的jar包执行方式,但是当我们用ctrl+c中断或者关闭窗口时,程序也会中断执行。...二、java -jar XXX.jar & &代表在后台运行,使用ctrl+c不会中断程序的运行,但是关闭窗口会中断程序的运行。...三、nohup java -jar XXX.jar & 使用这种方式运行的程序日志会输出到当前目录下的nohup.out文件,使用ctrl+c中断或者关闭窗口都不会中断程序的执行。...三、nohup java -jar XXX.jar >temp.out & >temp.out的意思是将日志输出重定向到temp.out文件,使用ctrl+c中断或者关闭窗口都不会中断程序的执行。

7.1K20
  • java 命令行运行jar包_java命令行运行jar包详解2016

    java命令行运行jar包详解2016 jar包是什么呢?jar是java archive file 的简写。从名字就可以知道,它的应用与Java息息相关。...下面就详细介绍如何自己生成jar包,这样我们管理我们自己的代码(尤其是一些比较重要而且不会或者很少有修改的代码)。下面一起来学习jar命令的一些常用方法,仅供参考!...安装好JDK之后,jar.exe就已经安装好了。在命令行中键入jar命令之后,就会出现下图。里面详细的介绍了jar命令的用法: 下面我们举例介绍jar命令的一些比较常用的用法。...二.jar cf 生成jar包的完整名称 要生成的class文件所在目录以及名称 这个命令的使用方法和上面一样,唯一的区别就是这个命令在生成jar文件的.过程中不会显示详细信息。...区别是该命令会显示文件中包含的所有目录和文件名列表。笔者这里就不一一演示了。 四.jar tvf 生成jar包的完整名称 要生成的class文件所在目录以及名称 使用方法同上。

    2.6K20

    Jar 命令打包 jar包

    ,那么我们可以用以下的命令来运行 java -classpath myapplication.jar com.example.myapp.MyAppMain 这显然太麻烦了,现在我们来创建自己的manifest...: Manifest-Version: 1.0 Created-By: JDJ example Main-Class: com.example.myapp.MyAppMain 这样我们就可以使用如下的命令来运行程序了...比如我的应用程序用到了Sun 的 Javamail classes ,在classpath中我需要包含activation.jar 和 mail.jar,这样在运行程序时,相比上面的例子,我们要增加一些...activation.jar (加入了Class-Path: mail.jar activation.jar,用空格分隔两个jar包) 这样我们仍然可以使用和上例中相同的命令来执行该程序: java...5. jar包内有些配置文件想放在jar包外面,比如文件config.properties:如果这个文件是以路径方式载入的,比如new file(".

    5.6K30

    Linux服务器后台运行jar包

    1.首先最基本的运行jar包命令是: java -jar xxx.jar 复制代码 这个命令会锁定命令窗口,只能看到当前运行的输出信息。而无法发送其他指令。...2.让jar包后台运行 用"&"符号结尾表示,让程序在后台运行。 这样的话,命令窗口就不会被锁定,而可以发送其他指令,但是当窗口关闭时,后台运行的程序依然会被停止。...如果不写情况下(缺省),就回默认在jar包所在目录,创建nohup.out文件。...nohup java -jar xxx.jar >logs.txt & 复制代码 命令运行成功后,会返回一个进程号,可以通过 kill -9 命令杀死这个进程来直接关闭。...如果忘了进程号,可以通过 ps -ef|grep xxx.jar 复制代码 来查看当前运行的jar包程序进程号。

    4.6K10

    全网最全Linux 运行jar包的几种方式

    一、Linux 运行jar包的几种方式 方式一: java -jar xxx.jar 最常用的启动jar包命令,特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出 方式二...: java -jar xxx.jar & &代表在后台运行 ,ctrl+c 后程序也会继续运行 方式三: nohup java -jar xxx.jar & nohup 即 no hang up 不挂断...> /dev/null 2>&1 & ​ 不输出日志 二、nohup 和 & 使用&后台运行程序: 结果会输出到终端 使用Ctrl + C,程序免疫 关闭session,程序关闭 使用nohup运行程序...它通常用于重定向一个命令的输出到一个新文件中。在没有命令的情况下使用重定向符号时,它会创建一个文件。 ​ /dev/null 可以看作黑洞,等价于一个只写文件。...如下一条shell命令 nohup java -jar app.jar >log 2>&1 & 我们不妨把1和2都理解是一个指针,然后来看上面的语句就是这样的: ​ 本来1—–>屏幕 (1指向屏幕) ​

    5.7K20

    Linux jar 运行与关闭

    最近在做一个项目,由于项目团队很多人,分工给我打包了一个jar服务器端的文件,然后用本地测试可以,然后再服务器运行,由于服务器是Linux的,这就体现了java的可移植性强的优点,但是执行运行命令后,关闭...ssh窗口再次我请求数据的时候,程序自动关闭了,后来查阅资料才知道,这是Linux的原因。...一些简单的操作linux jar包命令 1、执行jar包的命令和在windows操作系统上是一样的,都是java -jar xxxx.jar。...2、将jar程序设置成后台运行,并且将标准输出的日志重定向至文件consoleMsg.log。...nohup java -jar arserver-0.0.1-SNAPSHOT.jar >consoleMsg.log 2>&1 & 3、如果想杀掉运行中的jar程序,查看进程命令为: ps aux|

    8K61

    「Eclipse」生成能用命令行运行的jar包

    这里没有高深的知识,只用于新手备忘,高手请默默叉掉…… 这里来给大家讲讲如何通过Eclipse打出可运行的jar包。 为什么说是可运行的?...因为有些jar无需运行,只是作为一个项目依赖,那就没必要打可运行的jar包。但是,一般可运行的jar包也可作为项目依赖。 进入正题: 首先你要有Eclipse,还要有一套待打包的项目。...步骤二、选择Runnable JAR file ? 步骤三、配置jar包参数:这里的主入口类,必须是运行过一次才会有下拉框选择。 ?...通过以上三个步骤,完成打包以后,可以在指定目录下找到你的jar包。 运行jar包 在命令行输入java -jar 你的jar包路径,回车运行,就可以查看你的jar包运行结果。

    70630
    领券