linux下打jar包 main方法执行方式
(2015-05-08 16:14:31)
标签:
linuxjar包main-classnohup-jar |
分类: java |
最近遇到一个问题---“导数据”,大量的数据导进库里,一台机器够呛啊,于是在大神的帮助下将方法做线程池处理,用三台机器一起工作。其中有一台机器是linux服务器。这就是我要说的重点。
注意:1、如果是需要执行main方法的 我们就需要Main-Class,即包含main方法的类。格式:包名+类名
2、Class-Path为依赖的jar包 。
3、以上三项用英文冒号开始,冒号后要有一个空格。
4、Class-Path中如果有很多项,写成一行打包的时候会报错line
too long,这时需要把Class-Path分 多行写。注意:从第二行开始,必须以两个空格开头
这两个文件必须平级存放。跟 Class-Path中的路径有关。
java -jar loginadd.jar ***.xls&
nohup
java -jar loginadd.jar ***.xls&
注意:1、在应用Unix/Linux时,我们一般想让某个程序在后台运行,于是我们将常会用
& 在程序结尾来让
程序自动运行。如果不加
就在控制台运行,关闭窗口或者ctrl+c就会停止执行。
2、nohup: 程序的的标准输出被自动改向到当前目录下的nohup.out文件,起到了log的作用
本地运行很ok,直接执行java
application程序就行(main方法调用执行),但是在服务器上我并没有现成的项目,于是将我要执行的类打包为jar包,放到服务器上执行。具体方法:
一、将需要的类编译后的class文件,将编译后的文件打包成jar包。例如:loginadd.jar
二、可执行jar包的manifest.mf .文件格式必须如下:
Manifest-Version: 1.0
Created-By: 1.6.0_10-beta (Sun Microsystems Inc.)
Main-Class: com.zuzhili.bussness.utils.ParseURL
Class-Path: lib/commons-lang-2.5.jar lib/filterbuilder.jar
lib/htmllexer.jar lib/htmlparser.jar
lib/mysql-connector-java-5.1.7-bin.jar lib/poi-3.9-20121203.jar
lib/sitecapturer.jar lib/thumbelina.jar
三、整理需要的jar包放到文件夹lib下
四:将三中的manifest.mf文件整理好后移到loginadd.jar里面。。
五、现在就只有两个有效文件了:loginadd.jar
lib
六:将上述两个文件放到linux服务器上,执行。
前一篇:eclipse中svn插件的安装