zoukankan      html  css  js  c++  java
  • linux 编译并运行Java文件

    因工作需要,调接口时本地访问不了目标服务器,所以只能在服务器上运行调试。

    写了个脚本来编译运行。参数输入Java文件名无后缀

    #!/bin/bash
    if [ ! -n "$1" ]; then
        echo "Please enter a file name!"
        exit 0
    fi
    JAVA_FILE=$1.java
    LIB_DIR=`pwd`/lib
    LIB_JARS=`ls ${LIB_DIR}|grep .jar|awk '{print "'${LIB_DIR}'/"$0}'|tr "
    " ":"`
    echo -e "starting compile ${JAVA_FILE}...c"
    #UNIX shell使文件描述符0与进程的标准输入相结合,文件描述符1与标准输出相结合,文件描述符2与标准出错输出相结合。
    #该处的 2>&1 代表着错误输出 输出到 标准输出
    COMPILE_RESULT=`javac -classpath ${LIB_JARS} ${JAVA_FILE} 2>&1`
    if [ -n "$COMPILE_RESULT" ]; then
        echo ""
        echo "$COMPILE_RESULT"
        exit 0
    fi
    echo "Complie OK!"
    JAVA_OPTS=" -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true "
    JAVA_MEM_OPTS=" -server -Xmx2g -Xms2g -Xmn256m -XX:PermSize=128m -Xss256k -XX:+DisableExplicitGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+UseCMSCompactAtFullCollection -XX:LargePageSizeInBytes=128m -XX:+UseFastAccessorMethods -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 "
    
    STDOUT_FILE=`pwd`/log/$1.log
    CLASS_FILE=$1
    echo -e "Starting the ${CLASS_FILE} ...c"
    java ${JAVA_OPTS} ${JAVA_MEM_OPTS} -classpath ${LIB_JARS} ${CLASS_FILE} > ${STDOUT_FILE} 2>&1
    echo ""
    echo "Run OK!"
  • 相关阅读:
    逃避是解决不了问题
    div包含table
    change is possible
    POI修改Excel
    要做的事情太多,把手边的事情做好。
    不自信,不努力
    添加省略号
    C#基类库
    如何做到在页面POSTBACK刷新后,使LISTBOX的滚动条仍然保持上次的位置
    安装dedecms后台登录空白的解决方法
  • 原文地址:https://www.cnblogs.com/zuferj115/p/7586831.html
Copyright © 2011-2022 走看看