当需要把在Windows上开发的Java程序用在Linux上运行时,就需要吧该Java程序打包成jar包上传到Linux上去运行。
1.Java程序用MyEclipse打包成可运行的jar包
(1)在MyEclipse中选中需要打包的项目,点击右键,选择:Export... 如下图所示:
(2)然后在弹出的窗口中选择:Java-->Runnable JAR file,然后点击:Next,如下图所示:
(3)然后选择需要打包的程序和保存的地方,然后点击:Finish,如下图所示:
这样Java程序就打包成了可运行的jar包,就可以拷贝到Linux上运行了。
2.打包后的jar包在Linux上运行
当然,首先Linux上已经有了Java的运行环境。然后只需要在命令行输入:java -jar test.jar
就可以运行了,其中test.jar就是之前打包好的Java程序的jar包。
3.Java程序接收命令行参数的情况
如果在Linux上运行时,需要接收命令行参数的话,就需要在源Java程序中修改程序,让其能够接收命令行参数。
Java的命令行参数就是程序中main函数的参数:String[] args,其中args数组就是需要接收的所有命令行参数的数组。
在MyEclipse中运行程序时,需要输入要接收的命令行参数,步骤如下:
(1)点击菜单栏中的Run选项,选择:Run Configurations...或者Debug Configurations... ,如下图所示:
(2)然后在弹出的窗口中点击:Arguments 选项,然后在Program arguments中输入需要接收的命令行参数,多个参数中间以空格分开,点击Apply后,点击Run或者Debug即可,如下图所示:
程序运行成功后,然后在按前面的方法进行打包成可运行的jar包,然后在Linux上运行时,
输入命令:java -jar test.jar val1 val2,就可以运行程序了。
其中val1和val2就是程序需要接收的命令行参数。
下面linux执行命令行打的jar包为CheckTest.jar
建议把测试类单独挖出来 如上面流程
[weblogic@sungardprod pcissdomain]$ ^C
[weblogic@sungardprod pcissdomain]$ java -jar CheckTest.jar
Connection pool JNDI init over.
--Object Manager put bean :JNDI class:org.popcorn.manager.database.DAOExec
<-- v_product_deal_main_pa -->
update HIS_BASE_DEAL_COMMISION_SPLIT set TAXAFTERPRICE=1696.0,TAXAFTERPRICECNY=1696.0,TAXAFTERPRICEUSD=246.51,AMOUNT=1600.0,AMOUNTCNY=1600.0,AMOUNTUSD=232.56 where id=1247089;
update HIS_BASE_DEAL_COMMISION_SPLIT set TAXAFTERPRICE=317.96823,TAXAFTERPRICECNY=317.96823,TAXAFTERPRICEUSD=46.698666,AMOUNT=299.97003,AMOUNTCNY=299.97003,AMOUNTUSD=44.055595 where id=1443479;
update HIS_BASE_DEAL_COMMISION_SPLIT set TAXAFTERPRICE=317.96823,TAXAFTERPRICECNY=317.96823,TAXAFTERPRICEUSD=46.698666,AMOUNT=299.97003,AMOUNTCNY=299.97003,AMOUNTUSD=44.055595 where id=1443480;
update HIS_BASE_DEAL_COMMISION_SPLIT set TAXAFTERPRICE=318.0636,TAXAFTERPRICECNY=318.0636,TAXAFTERPRICEUSD=46.712677,AMOUNT=300.06,AMOUNTCNY=300.06,AMOUNTUSD=44.06881 where id=1443481;
update HIS_BASE_DEAL_COMMISION_SPLIT set TAXAFTERPRICE=1590.0,TAXAFTERPRICECNY=1590.0,TAXAFTERPRICEUSD=236.79,AMOUNT=1500.0,AMOUNTCNY=1500.0,AMOUNTUSD=223.39 where id=1603920;
update HIS_BASE_DEAL_COMMISION_SPLIT set TAXAFTERPRICE=2226.0,TAXAFTERPRICECNY=2226.0,TAXAFTERPRICEUSD=337.74,AMOUNT=2100.0,AMOUNTCNY=2100.0,AMOUNTUSD=318.62 where id=1728775;
buyer 未插入HIS_BASE_DEAL_COMMISION_SPLIT表成交编号 BSD20171019000349
update HIS_BASE_DEAL_COMMISION_SPLIT set TAXAFTERPRICE=318.0,TAXAFTERPRICECNY=318.0,TAXAFTERPRICEUSD=46.22,AMOUNT=300.0,AMOUNTCNY=300.0,AMOUNTUSD=43.605 where id=1242141;
update HIS_BASE_DEAL_COMMISION_SPLIT set TAXAFTERPRICE=318.0,TAXAFTERPRICECNY=318.0,TAXAFTERPRICEUSD=46.22,AMOUNT=300.0,AMOUNTCNY=300.0,AMOUNTUSD=43.605 where id=1242142;
selller 未插入HIS_BASE_DEAL_COMMISION_SPLIT表成交编号 BSD20171019000349
结束
希望对大家有所帮助,谢谢。