加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

linux下打jar包 main方法执行方式

(2015-05-08 16:14:31)
标签:

linux

jar包

main-class

nohup

-jar

分类: java
最近遇到一个问题---“导数据”,大量的数据导进库里,一台机器够呛啊,于是在大神的帮助下将方法做线程池处理,用三台机器一起工作。其中有一台机器是linux服务器。这就是我要说的重点。
本地运行很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
        注意:1、如果是需要执行main方法的 我们就需要Main-Class,即包含main方法的类。格式:包名+类名
                  2、Class-Path为依赖的jar包 。
                  3、以上三项用英文冒号开始,冒号后要有一个空格。
                  4、Class-Path中如果有很多项,写成一行打包的时候会报错line too long,这时需要把Class-Path分 多行写。注意:从第二行开始,必须以两个空格开头
三、整理需要的jar包放到文件夹lib下
四:将三中的manifest.mf文件整理好后移到loginadd.jar里面。。
五、现在就只有两个有效文件了:loginadd.jar     lib
       这两个文件必须平级存放。跟Class-Path中的路径有关。
六:将上述两个文件放到linux服务器上,执行。
 java -jar loginadd.jar ***.xls&
 nohup java -jar loginadd.jar ***.xls&
             注意:1、在应用Unix/Linux时,我们一般想让某个程序在后台运行,于是我们将常会用 & 在程序结尾来让                          程序自动运行。如果不加 就在控制台运行,关闭窗口或者ctrl+c就会停止执行。
                     2、nohup:程序的的标准输出被自动改向到当前目录下的nohup.out文件,起到了log的作用

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有