linux .java .jar java -jar命令详解
如何在linux下执行jar文件
linux下执行jar文件方法:命令行下进入文件目录,执行java-jar file.jar即可,也可在桌面创建一个启动器,在命令栏填写相关的命令:java-jar/file路径/file.jar,这样在桌面双击即可打开该jar文件
创建可执行的 JAR文件包详解:JAR文件就是 Java Archive File,顾名思意,它的应用是与 Java息息相关的,是 Java的一种文档格式。JAR文件非常类似 ZIP文件--准确的说,它就是 ZIP文件,所以叫它文件包。JAR文件与 ZIP文件唯一的区别就是在 JAR文件的内容中,包含了一个 META-INF/MANIFEST.MF文件,这个文件是在生成 JAR文件的时候自动创建的.举个例子,如果我们具有如下目录结构的一些文件:
==
`-- test
`-- Test.class
把它压缩成 ZIP文件 test.zip,则这个 ZIP文件的内部目录结构为:
test.zip
`-- test
`-- Test.class
如果我们使用 JDK的 jar命令把它打成 JAR文件包 test.jar,则这个 JAR文件的内部目录结构为:
test.jar
|-- META-INF
| `-- MANIFEST.MF
`-- test
`--Test.class
创建可执行的 JAR文件包,需要使用带 cvfm参数的 jar命令,同样以上述 test目录为例,命令如下:jar cvfm test.jar manifest.mf test,这里 test.jar和 manifest.mf两个文件,分别是对应的参数 f和 m,其重头戏在 manifest.mf。因为要创建可执行的 JAR文件包,光靠指定一个 manifest.mf文件是不够的,因为 MANIFEST是 JAR文件包的特征,可执行的 JAR文件包和不可执行的 JAR文件包都包含 MANIFEST。关键在于可执行 JAR文件包的 MANIFEST,其内容包含了 Main-Class一项。这在 MANIFEST中书写格式如下:Main-Class:可执行主类全名(包含包名)
例如,假设上例中的 Test.class是属于 test包的,而且是可执行的类(定义了 public static void main(String[])方法),那么这个 manifest.mf可以编辑如下:Main-Class: test.Test,这个 manifest.mf可以放在任何位置,也可以是其它的文件名,只需要有 Main-Class: test.Test一行,且该行以一个回车符结束即可。创建了 manifest.mf文件之后,我们的目录结构变为:
==
|-- test
| `-- Test.class
`-- manifest.mf
这时候,需要到 test目录的上级目录中去使用 jar命令来创建 JAR文件包。也就是在目录树中使用==表示的那个目录中,使用如下命令:jar cvfm test.jar manifest.mf test
之后在==目录中创建了 test.jar,test.jar就是执行的 JAR文件包。运行时只需要使用 java-jar test.jar命令即可。
需要注意的是,创建的 JAR文件包中需包含完整的、与 Java程序包结构对应的目录结构。而 Main-Class指定的类,也必须是完整的、包含包路径的类名,如上例的 test.Test;而且在没有打成 JAR文件包之前可以使用 java来运行这个类,即在上例中 java test.Test是可以正确运行的(当然要在 CLASSPATH正确的情况下)。
linuxjar命令找不到linuxjar命令
如何在linux下运行java文件?
以Ububtu系统为例,想要在Ubuntu上运行java程序,可以将java程序编译成功后打包,然后在Ubuntu上用命令执行jar文件。具体操作如下:
1、Windows上使用eclipse编译java工程,编译完成后导出为RunnableJARFile,如MyTest.jar。
2、Ubuntu上java环境安装:
(1)到JDK官网下载linux上使用的jdk。
(2)到eclipse官网下载linux上使用的eclipse。
(3)将jdk和eclipse上传到Linux服务器并解压,然后配置java环境变量。(eg.jdk的解压目录是/home/test)
配置方法:编辑/etc/profile文件,添加如下内容(备注:Linux中冒号:用于分隔路径,点号.表示当前目录)
exportJAVA_HOME=/home/test/jdk1.8.0_65
exportPATH=$JAVA_HOME/bin:$PATH
exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
编辑完成后保存文件
(4)使配置生效,命令source/etc/profile
(5)测试环境变量是否配置成功,命令java-version。显示jdk版本,则表示java环境变量配置成功。
3、Ubuntu上执行java工程导出的jar文件。命令:java-jarMyTest.jar
linux远程运行jar包关闭窗口后程序就停了?
在Linux远程运行JAR包时,是不能关掉窗口程序的,否则程序也会终止。其中nohup表示后台运行,关闭窗口后也也继续执行,意思是终端连接的时候后台运行,终端断了进程也会停。
具体解决方法是使用nohup命令,在窗口程序的前面加上nohup,程序的后面加上,这样程序就会一直执行直到结束,而不会因为关闭窗口程序而停了。
例子,比如:nohupphpspider.php回车,然后提示一堆东西,再次回车,回到shell界面。这就可以了。
linux查看jar大小?
linux中可以通过终端ls指令来查询文件的大小,包括jar包大小。
ls功能强大,配合不同的参数可以输出和格式化结果,查询大小的指令为:ls-l
还可以使用-h参数格式化输出:ls-lh
怎么用linux命令获取某文件夹下的所有jar文件并将jar文件中类名相同的.class文件挑出,放在一个文件夹里?
find/目录1-name'*.jar'-execjar-xvf{}/目录2;find/目录2/-name'*.class'-execcp{}/目录3;目录1是要查找的目录,目录2是临时存放解压文件的目录,目录3是要放文件的目录,之后如果不要目录2的再rm-rf/目录2就搞定了
Linux不解压打开jar中的某一个文件?
首先你要下载linux版本的JDK(安装包查看附件)然后复制到linux/usr/local/java目录下执行命令tar-xzvfjdk-8u25-linux-x64.tar.gz就会在当前目录下解压,之后会有个文件夹jdk1.8.0_25然后就去配置环境变量修改文件/etc/profileJAVA_HOME=/usr/local/java/jdk1.8.0_25JRE_HOME=$JAVA_HOME/jre/CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jarPATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/binexportPATH保存后执行后生效source/etc/profile
Linux 安装,配置,运行java并使用jar包运行项目
在Linux系统中运行Java项目并使用jar包时,主要关注点包括java环境配置、jar包的运行方式以及如何解决运行时可能遇到的错误。
在Linux系统中,运行jar包主要有四种方法。其中,最简单的是使用"java-jar XXX.jar",但这种方式在使用Ctrl+C中断或者关闭窗口时,程序也会随之中断。为了解决这个问题,可以使用"java-jar XXX.jar&"来在后台运行jar包,这样即便关闭了窗口,程序仍会继续运行。不过,这种方式下如果使用Ctrl+C中断,程序会停止执行。更进一步,通过使用"nohup java-jar XXX.jar&",程序的日志将被输出到当前目录下的nohup.out文件中,这种方式下无论是使用Ctrl+C中断还是关闭窗口,程序都不会停止执行。如果需要同时指定配置文件,可以使用"nohup java-jar XXX.jar>temp.out&"。
为了在Linux系统中运行Java项目,首先需要在系统中安装Java环境,具体操作包括下载并解压JDK(如JDK 1.8)到指定目录(如/usr/local),然后添加环境变量以方便后续操作。为了验证是否成功安装,可以使用"java-version"命令查看Java版本信息。
在配置好Java环境后,可以使用Maven来创建Java项目。Maven是一个用于管理和自动化构建的工具,使用它可以方便地创建、编译和运行Java项目。为了使用Maven,需要将Maven解压至某个目录(如/usr/local)下,并通过添加环境变量来使系统能够识别Maven命令。随后,可以通过运行"mvn install"命令来创建一个Maven项目,之后使用"Maven编译"命令(如"mvn clean compile")来编译项目,最后使用"Maven打包"命令(如"mvn package")来将项目打包成.jar文件。打包完成后,可以通过命令"java-jar项目名称.jar"来运行.jar文件,其中"项目名称"应替换为实际的项目名称。
在运行.jar文件时,可能会遇到找不到或无法加载主类的错误,比如"错误:找不到或无法加载主类 springboot-0.0.1-snapshot.jar",这通常是因为Java环境配置不正确所致。为了解决这个问题,需要确保已经正确配置了Java环境变量,包括路径和版本信息,这样Java才能正确识别并加载.jar文件中的主类。