• 利用脚本启动java程序


    利用脚本启动java程序

            今天在工作中,需要写一个shell脚本,启动一个socket程序,从而模拟短信网关。查了一些资料,终于搞定了,现在记录一下,方便大家查阅。

           为了说明使用方法,我们就用最简单的程序来实现,比如我们要运行下面这个类的main方法 

    package chb.cmd.test;

    import java.io.File;
    import java.io.IOException;

    import org.apache.log4j.Logger;

    public class TestClass {
        
        
    static Logger log = Logger.getLogger(TestClass.class);
        
    /**
         * 
    @param args
         
    */

        
    public static void main(String[] args) {
            log.debug(args[
    0]);
            File file 
    = new File(args[0]);
            
    try {
                file.createNewFile();
            }
     catch (IOException e) {
                e.printStackTrace();
            }

        }

    }

             我们需要把这个类所在的project打成jar包,比如叫做:cmdDemo.jar,然后把cmdDemo.jar和该工程所需要的所有jar包放到一起,比如我的目录是:D:/cmdDemo/lib。

             以下要写脚本文件,我们分为两个部分,windows和linux。

    一.windows

          在windows下就是要写大家熟悉的bat文件,例如我在D:/cmdDemo/lib下新建一个start.bat,内容如下:

    java -classpath D:/cmdDemo/lib/log4j-1.2.14.jar;D:/cmdDemo/lib/cmdDemo.jar chb.cmd.test.TestClass D:/cmdDemo/test.txt

           然后双击该bat文件,就会发现在D:/cmdDemo目录下多了个test.txt文件。

    二.linux

             在linux下需要新建一个sh脚本,基本写法和在windows下一样,唯一区别是在windows下各个jar包之间的分隔符是";",而在linux下各个jar包之间的分隔符是":"。

    java -classpath /root/cmdDemo/lib/log4j-1.2.14.jar:/root/cmdDemo/lib/cmdDemo.jar chb.cmd.test.TestClass /root/cmdDemo/test.txt

          然后运行这个脚本文件就ok了,如果没有权限的话,记得使用

    chmod +start.sh

            恩,好了,虽然很简单,但是还是希望能够帮助大家。

  • 相关阅读:
    处处留心皆学问,世事如棋局局新…
    【转载】2017 软件测试行业现状调查报告_From_51testing_On_20180625
    Hello World In Go ...
    C# 易错题整理
    C# 函数
    C# 哈希表,队列,栈
    C# 数组,集合,泛型集合
    C# 如何生成验证码
    C# 年月日时间题+Timespan
    闰年的一个BUG
  • 原文地址:https://www.cnblogs.com/hehe520/p/6330233.html
Copyright © 2020-2023  润新知