校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Shell執行/調用Java/Jar程序例子的實例詳解

Shell執行/調用Java/Jar程序例子的實例詳解

熱門標簽:電銷機器人加盟多少錢 4層電梯外呼控制系統設計 貴陽400電話到哪里去辦理 汨羅代理外呼系統 宿松高德地圖標注 天津智能外呼系統排名 400電話申請找 申請400電話有什么用 網絡電話外呼系統撥號軟件

Shell執行/調用Java/Jar程序例子的實例詳解

前言:

最近要寫一個獨立的Java程序去監控Hadoop和Oozie,通過Shell去調用.寫代碼到現在也4年多了,貌似就從來沒在生產環境中寫過一個獨立的Java程序,不是部署到Tomcat就是直接丟給Hadoop.于是參考Hadoop等開源環境,自己寫了一個demo,并且可以通過Ant打包生成可運行的程序.所以這里有三步:Java程序,Shell,Ant

     1.首先建立Java程序,由于是例子,所以這里很簡單,只是輸出傳入參數的個數,

代碼如下:



package com.guoyun.study.shell; 
 
public class ShellJavaAnt { 
 
  /** 
   * @param args 
   */ 
  public static void main(String[] args) { 
    System.out.println("arguments length:"+args.length); 
  } 
 
} 
 

    2.Shell腳本

Shell代碼 

#!/bin/bash 
# 
PRG="${0}" 
while [ -h "${PRG}" ]; do 
 ls=`ls -ld "${PRG}"` 
 link=`expr "$ls" : '.*-> \(.*\)$'` 
 if expr "$link" : '/.*' > /dev/null; then 
  PRG="$link" 
 else 
  PRG=`dirname "${PRG}"`/"$link" 
 fi 
done 
 
BASEDIR=`dirname ${PRG}` 
BASEDIR=`cd ${BASEDIR}/..;pwd` 
 
 
if test -z ${JAVA_HOME} 
then 
  JAVA_BIN=java 
else 
  JAVA_BIN=${JAVA_HOME}/bin/java 
fi 
 
CLASS_PATH=$BASEDIR/shell-run-java-by-ant-*.jar 
SERVICE_CLASS="com.guoyun.study.shell.ShellJavaAnt" 
 
${JAVA_BIN} -cp $CLASS_PATH ${SERVICE_CLASS} "${@}" 
 
exit 0 

    3.ANT

Xml代碼 

project name="shell-run-java-by-ant" default="release-jar" basedir="."> 
 
 property file="build.properties" /> 
   
 property name="jar.name" value="shell-run-java-by-ant" /> 
 property name="version" value="0.1" /> 
 property name="package.name" value="${jar.name}-${version}" /> 
 
 property name="build.dir" location="build" /> 
 property name="build.cache.dir" location="${build.dir}/cache" /> 
 property name="build.lib.dir" location="${build.dir}/lib" /> 
 property name="javadoc.dir" location="javadoc" /> 
 property name="dist.dir" location="dist" /> 
 property name="dist.java.dir" location="${dist.jar}/java" /> 
 property name="package.dir" location="${dist.dir}/${package.name}" /> 
 property name="tar.file" location="${dist.dir}/${jar.name}-${version}.tar.gz" /> 
 
 
 property name="src.dir" location="src" /> 
 property name="java.src.dir" location="${src.dir}/java" /> 
 property name="test.src.dir" location="${src.dir}/test" />  
 property name="classes.dir" location="${build.dir}/classes" /> 
 property name="lib.dir" value="${basedir}/lib"/> 
 property name="script.dir" value="${basedir}/script"/> 
 
 
 target name="release" description="sets properties for release builds."> 
    echo message="Building in release mode..."/> 
    property name="compile.mode" value="release"/> 
    property name="java.debug" value="false"/> 
 /target> 
 
 target name="init"> 
  tstamp/> 
  mkdir dir="${build.dir}" /> 
  mkdir dir="${classes.dir}" /> 
 /target> 
 
 macrodef name="compile-source"> 
  sequential> 
  javac srcdir="${java.src.dir}" destdir="${classes.dir}" debug="${java.debug}" debuglevel="lines,vars,source"> 
   classpath> 
    fileset dir="lib"> 
     include name="**/*.jar"/> 
    /fileset> 
   /classpath> 
  /javac> 
  /sequential> 
 /macrodef> 
 
 target name="compile" depends="init" description="compile the source"> 
  compile-source /> 
 /target> 
 
  
 target name="jar" depends="compile"> 
  delete file="${build.dir}/${jar.name}-${version}.jar"/> 
  jar jarfile="${build.dir}/${jar.name}-${version}.jar"> 
   fileset dir="${classes.dir}"/> 
  /jar> 
 /target> 
   
 target name="package" depends="clean, jar"> 
  mkdir dir="${package.dir}"/> 
  mkdir dir="${package.dir}/lib"/> 
  mkdir dir="${package.dir}/bin" /> 
 
  copy todir="${package.dir}/lib" includeEmptyDirs="false"> 
   fileset dir="${lib.dir}"> 
    include name="**/*" /> 
   /fileset> 
  /copy> 
  copy todir="${package.dir}"> 
   fileset file="${build.dir}/${jar.name}-${version}.jar"/> 
  /copy> 
  copy todir="${package.dir}/" file="build.xml"/> 
  copy todir="${package.dir}/bin" includeEmptyDirs="false"> 
      fileset dir="${basedir}/script/shell"> 
        include name="**/*" /> 
      /fileset> 
  /copy> 
   
  chmod file="${package.dir}/bin/*" perm="ugo+rx"/> 
 /target> 
 
 target name="tar" depends="package" description="Create release tarball"> 
  tar compression="gzip" longfile="gnu" destfile="${tar.file}"> 
   tarfileset dir="${package.dir}" mode="777" prefix="${package.name}"> 
    exclude name="bin/*" /> 
    exclude name="**/*.sh" /> 
    include name="**" /> 
   /tarfileset> 
   tarfileset dir="${package.dir}" mode="777" prefix="${package.name}"> 
    include name="**/*.sh" /> 
   /tarfileset> 
  /tar> 
  delete dir="${package.dir}" /> 
 /target> 
  
 target name="javadoc" depends="compile" description="generate documentation" > 
  delete dir="${javadoc.dir}" /> 
  javadoc destdir="${javadoc.dir}"> 
   fileset dir="${java.src.dir}" /> 
   classpath> 
    fileset dir="${lib.dir}"> 
     include name="**/*.jar"/> 
    /fileset> 
   /classpath> 
  /javadoc> 
 /target> 
 
 target name="release-jar" description="Build release and jar" depends="release,jar"/> 
 
 target name="clean" description="clean up"> 
  delete dir="${build.dir}"/> 
  delete dir="${classes.dir}" /> 
  delete dir="${dist.dir}"/> 
 /target> 
 
/project> 

    由于比較簡單,這里就不多做注釋,完整例子,請見附件.使用的話,只要進入你的工程,運行ant package,便會將程序打包到$YOUR_PROJECT/dist目錄下.之后進入該程序運行bin/shell-java-ant  a b c d e f g,就會得到arguments length:7
這樣子的輸出.

如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

您可能感興趣的文章:
  • Linux啟動jar包的shell腳本
  • 詳解spring boot 以jar的方式啟動常用shell腳本
  • shell腳本運行java程序jar的方法
  • Linux 啟動停止SpringBoot jar 程序部署Shell 腳本的方法
  • Linux下shell通用腳本啟動jar(微服務)
  • Linux利用Shell腳本部署jar包項目的完整步驟

標簽:烏蘭察布 贛州 海北 臨沂 廣東 連云港 撫州 昌都

巨人網絡通訊聲明:本文標題《Shell執行/調用Java/Jar程序例子的實例詳解》,本文關鍵詞  Shell,執行,調用,Java,Jar,程序,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Shell執行/調用Java/Jar程序例子的實例詳解》相關的同類信息!
  • 本頁收集關于Shell執行/調用Java/Jar程序例子的實例詳解的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    丁香婷婷综合五月| 久久99在线观看| 久久国产精品一区二区| 在线观看视频一区二区| 亚洲va国产天堂va久久en| 色天天综合久久久久综合片| 亚洲欧美国产高清| 欧美一区二区日韩| 亚洲色图欧美偷拍| 一本色道久久加勒比精品| 一区二区高清免费观看影视大全| 欧美日精品一区视频| 一区二区三区精品久久久| 欧美肥胖老妇做爰| 精久久久久久久久久久| 一区二区三区中文字幕精品精品 | 日韩一区二区高清| 成人a级免费电影| 狠狠色丁香婷婷综合| 国产精品网站一区| 国产亚洲1区2区3区| 日韩亚洲欧美在线观看| 色婷婷亚洲一区二区三区| 久久99精品国产| 视频精品一区二区| 丝瓜av网站精品一区二区 | 捆绑紧缚一区二区三区视频| 亚洲一区二区三区在线| 亚洲日本中文字幕区| 综合自拍亚洲综合图不卡区| 2017欧美狠狠色| 精品三级av在线| 国产精品女同一区二区三区| 久久无码av三级| 欧美国产欧美综合| 国产精品久久久久影视| 樱桃国产成人精品视频| 18欧美亚洲精品| 亚洲成人动漫在线观看| 久久99国产精品久久99| av电影在线观看一区| 欧美精品色一区二区三区| 精品毛片乱码1区2区3区| 国产精品成人在线观看| 婷婷激情综合网| 国产成人自拍高清视频在线免费播放 | 亚洲超碰97人人做人人爱| 精品一二三四区| 欧美专区在线观看一区| 久久久亚洲精品石原莉奈| 亚洲第一会所有码转帖| 成人av免费观看| 久久一区二区三区国产精品| 一区二区三区四区国产精品| 调教+趴+乳夹+国产+精品| 高清不卡一二三区| 色婷婷国产精品久久包臀| 欧美一区二区三区视频| 中文字幕一区二区三区四区不卡 | 日本成人在线不卡视频| 国产精品一区二区在线播放| 欧美久久婷婷综合色| 亚洲va欧美va天堂v国产综合| 成人综合在线网站| 久久久久久毛片| 国产呦萝稀缺另类资源| 日韩精品一区二区三区蜜臀 | 国产精品小仙女| 精品欧美乱码久久久久久1区2区| 亚洲国产日韩在线一区模特 | 亚洲成人久久影院| 欧美影视一区在线| 蜜臀av性久久久久蜜臀aⅴ流畅| 91精品国产综合久久精品性色| 亚洲精品免费电影| 日韩一区二区三区电影| 久久精品国产久精国产| 中文字幕在线观看不卡| 在线亚洲一区二区| 美洲天堂一区二卡三卡四卡视频 | 欧美偷拍一区二区| 久久国内精品视频| 亚洲特级片在线| 欧美日韩免费高清一区色橹橹 | 色94色欧美sute亚洲线路二| 亚洲国产毛片aaaaa无费看| 精品久久久久一区二区国产| 成人网在线播放| 日韩精品欧美精品| 亚洲欧洲中文日韩久久av乱码| 欧美吞精做爰啪啪高潮| 久久国产精品区| 亚洲一区二区三区不卡国产欧美| 欧美精品一区二区精品网| 99精品欧美一区二区三区小说 | 亚洲精品在线免费观看视频| av电影在线观看一区| 国产超碰在线一区| 久久99国产精品久久99| 日韩精品成人一区二区三区| 日韩黄色免费网站| 国产黄色精品网站| 国产精品国产三级国产三级人妇| 亚洲视频香蕉人妖| 久久国产尿小便嘘嘘尿| 亚洲午夜在线视频| 亚洲伊人伊色伊影伊综合网| 中文字幕一区二区三区不卡| 久久综合色综合88| 91精品国产91久久久久久最新毛片 | 国产精品一二二区| 成人不卡免费av| 欧美日韩高清一区| 亚洲精品一区二区三区香蕉| 久久久久国产精品免费免费搜索| 国产日韩欧美一区二区三区综合 | 国产成人免费视| 欧美乱妇一区二区三区不卡视频| 久久综合国产精品| 亚洲免费观看高清完整版在线| 成人在线一区二区三区| 亚洲尤物视频在线| 94-欧美-setu| 亚洲综合在线观看视频| 豆国产96在线|亚洲| 3751色影院一区二区三区| 国产精品情趣视频| 国产激情精品久久久第一区二区| 国产精品一卡二卡在线观看| 91麻豆免费看片| 欧美激情艳妇裸体舞| 久久不见久久见免费视频7 | 欧美日韩不卡一区二区| 综合色天天鬼久久鬼色| 日韩成人一区二区三区在线观看| 91在线观看污| 亚洲一区二区综合| 51久久夜色精品国产麻豆| 亚洲免费观看视频| 岛国av在线一区| 国产视频一区在线播放| 麻豆成人久久精品二区三区小说| 欧美伊人精品成人久久综合97 | 成人自拍视频在线| 欧美国产欧美综合| gogo大胆日本视频一区| 国产精品视频麻豆| 欧美老女人在线| 91视频在线看| 六月丁香婷婷久久| 国产精品天天摸av网| 午夜视频在线观看一区二区三区| 国产不卡高清在线观看视频| 国产精品久久久久影院| 成人激情免费电影网址| 亚洲精品乱码久久久久久| 色婷婷精品大在线视频| 午夜精品久久久久| 国产亚洲欧洲997久久综合| 成人一区二区视频| 一区二区激情视频| 欧美日韩国产高清一区二区三区 | 3d动漫精品啪啪1区2区免费| 日日摸夜夜添夜夜添精品视频| 日韩免费一区二区三区在线播放| 国模一区二区三区白浆| 国产欧美日韩激情| 这里只有精品电影| 不卡av在线网| 国产成人精品aa毛片| 日本不卡在线视频| 亚洲一区在线观看免费观看电影高清| 日韩欧美国产高清| 欧美二区三区91| 在线观看日韩一区| 色综合天天综合给合国产| 国产成人在线视频免费播放| 狠狠色狠狠色综合| 蜜乳av一区二区| 精品一区二区三区欧美| 日韩主播视频在线| 亚洲国产视频直播| 久久精品国产亚洲5555| 久久精品国产99久久6| 无码av中文一区二区三区桃花岛| 国产精品成人一区二区三区夜夜夜| 日本一区二区久久| 中文字幕av不卡| 亚洲激情图片小说视频| 丝袜美腿一区二区三区| 激情亚洲综合在线| 成人免费视频一区| 99久久精品一区二区| 在线一区二区三区四区| 欧美日韩国产一区二区三区地区| 日韩一区二区三区在线观看| 日韩美女主播在线视频一区二区三区| 久久综合久色欧美综合狠狠| 中文久久乱码一区二区| 夜夜嗨av一区二区三区网页 |