Main方法传递参数执行动态程序

 

两种办法:

1. java类参数传递

                通过数组取值:

  String diskname=args[0];
  String tablename=args[1];

 java 类名 参数1 参数2

  D:/MyEclipse/Common/binary/com.sun.java.jdk.win32.x86_1.6.0.013/bin/java -Ddiskname=C://image -Xms128m -Xmx512m -Dtablename=t_image_4 -Dfile.encoding=GBK -classpath %cp% com.artron.image.util.Main C://image t_image_4
             


2.系统属性设置传递参数


  D:/MyEclipse/Common/binary/com.sun.java.jdk.win32.x86_1.6.0.013/bin/java -Ddiskname=C://image -Xms128m -Xmx512m -Dtablename=t_image_4 -Dfile.encoding=GBK -classpath %cp% com.artron.image.util.Main C://image t_image_4
  
java -Ddiskname=C://image -Dtablename=t_image_4 类名

String diskname=System.getProperty("diskname");
String tablename=System.getProperty("tablename");

 


如下类:


package com.artron.image.util;

public class Main {

 /**
  * @param args
  */
 public static void main(String[] args) {

  String diskname=args[0];
  String tablename=args[1];
  
  System.out.println(diskname);
  System.out.println(tablename);
  
  System.out.println(System.getProperty("diskname"));
  System.out.println(System.getProperty("tablename"));

  //ListFileUtil.listAllFiles(diskname,tablename);
  
  
 }

}

调用:

  D:/MyEclipse/Common/binary/com.sun.java.jdk.win32.x86_1.6.0.013/bin/java -Ddiskname=C://image -Xms128m -Xmx512m -Dtablename=t_image_4 -Dfile.encoding=GBK -classpath %cp% com.artron.image.util.Main C://image t_image_4
     


bat调用:

一. a.bat

set cp=%cp%;%1


2.  test.bat

@echo off

set cp=config

for %%i in (lib/*.jar) do call a.bat %%i

set cp=%cp%;

D:/MyEclipse/Common/binary/com.sun.java.jdk.win32.x86_1.6.0.013/bin/java -Ddiskname=C://image -Xms128m -Xmx512m -Dtablename=t_image_4 -Dfile.encoding=GBK -classpath %cp% com.artron.image.util.Main C://image t_image_4

pause

目录结构

com
lib
a.bat
test.bat


项目运行只需要一个jre就行了,把jre或者jdk里面的jre拷贝一份到项目的文件夹,在.bat批处理文件加上set PATH=%PATH%;jre的目录;项目运行时就直接用这一套jre了

set PATH=%PATH%;jre的目录


项目运行只需要一个jre就行了,把jre或者jdk里面的jre拷贝一份到项目的文件夹,在.bat批处理文件加上set PATH=%PATH%;jre的目录;项目运行时就直接用这一套jre了


SET PATH=./jre/bin;%1;%PATH%;

 

上一篇:SQL*Net break/reset to client等待事件


下一篇:Android实现TCP断点上传,后台C#服务实现接收