我必须从java打开cmd.exe,然后在同一个窗口中打开sqlplus.exe,但我不能。我可以做的是打开cmd,但我无法使用它,对于sqlplus.exe它似乎打开了一个不同的cmd.exe实例,我可以在netbeans java终端中看到来自sqlplus的欢迎消息,但无法生成querys。
这是我正在使用的代码
public void construirJob(String nombre,Fecha fecha,String direccionSQL){
try {
command[0] = "cmd";
command[1] = "/c";
command[2] = "start cmd.exe && cd C:/oraclexe/app/oracle/product/11.2.0/server/bin && dir && sqlplus.exe"
+ " && @"+direccionSQL+" && connect /as sysdba; && select * from v$tablespace;";
JobDetail job = JobBuilder.newJob(HelloJob.class)
.withIdentity(nombre+"JOB", "group1").build();
String schedule=fecha.segundos+" "+fecha.minutos+" "+fecha.hora+" "+"*"+" "+"*"+" "+fecha.dia;
Trigger trigger = TriggerBuilder
.newTrigger()
.withIdentity(nombre+"trigger", "group1")
.withSchedule(
//CronScheduleBuilder.cronSchedule("0/10 * * * * ?"))
CronScheduleBuilder.cronSchedule(schedule))
.build();
//schedule it
Scheduler scheduler = new StdSchedulerFactory().getScheduler();
scheduler.start();
scheduler.scheduleJob(job, trigger);
} catch (SchedulerException ex) {
Logger.getLogger(CronTriggerExample.class.getName()).log(Level.SEVERE, null, ex);
}
}
答案 0 :(得分:0)
我会看看apache commons exec 库。 http://commons.apache.org/proper/commons-exec/
还有关于如何使用此库的Turorial: http://commons.apache.org/proper/commons-exec/tutorial.html