我有两个java工程,我如何让一个工程运行结束后马上运行两外一个工程

我有两个java普通的工程,用于抽取数据的,但是不允许合并他们,因为代价很大。
有一个工程是抽取数据的,另外一个工程是处理数据的。
所以是抽取数据的工程结束后,才能进行加工。
但是不允许手工做,在特定的时间内,要由aix系统调度。

不难。

第一种,使用JAVA本身。你只需要在你的抽取数据的结尾处增加这么一句
Runtime.getRuntime().exec("你的操作系统可执行文件的绝对路径");我查了下API,这个方法是新建一个进程,进程执行的是你指定的内容,如果你的操作系统是WINDOWS,那么推荐你将第2个工程执行写成一个.bat批处理文件,linux下写成shell脚本文件。你只需要将这个批处理放到exec参数里面了。注意要写到最后,因为他是新建一个进程和之前的主进程是并发执行的。

第二种,更简单了,利用操作系统本身来处理。用.bat批处理或者linux的shell脚本。

由于你问题不太明确,没有提出要求。我估计你可能是第一个抽取数据没有存放到硬盘,而还是在内存中,再由第2个工程去处理。对于这种情况,如果你用第一种办法,那么你去看看API,我查到exec这个方法是可以带输入参数,你只需要把参数带进去即可。如果是第2种,我不知道.bat有办法没,在shell中可以利用输出重定向或者管道。
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-11-03
我只能告诉 没办法让一个工程跟另一个工程建立上任何关系 但是 有办法能从一个工程到另一个工程 你写一个重定向 然后弄个相对路径直接跳到另一个工程里就可以了 明白么?
第2个回答  2008-11-03
问题很有趣,共同期待解决方法!
第3个回答  2008-11-03
hgj

我有两个java工程,我如何让一个工程运行结束后马上运行两外一个工程
第一种,使用JAVA本身。你只需要在你的抽取数据的结尾处增加这么一句 Runtime.getRuntime().exec("你的操作系统可执行文件的绝对路径");我查了下API,这个方法是新建一个进程,进程执行的是你指定的内容,如果你的操作系统是WINDOWS,那么推荐你将第2个工程执行写成一个.bat批处理文件,linux下写成she...

java中请问如何等待一个线程结束在运行其他的代码?
使用java的线程同步机制。现在存在两个线程a和b,伪代码如下:在a的代码中:b.start();\/\/启动b线程 synchronized(b) b.wait();\/\/a线程中采用同步,并进行等待 c.execute();在b线程结束时调用synchronized(this) notify();这样就可以达到b不结束,a线程就不会继续执行c。注释:如果看不明白...

如何在一个java工程里面获取两个数据库的数据
如果确实需要分成两个工程的话,那可以考虑用一个工程将结果输出到文件中,另外一个工程将结果从文件中读取。当然,因为文件的打开关闭操作会比较慢,所以可能需要设置一个固定的时间点进行一次写入之后再关闭文件。另外你说的servlet是什么意思?是你的两个工程其实都是web工程吗?如果是web工程的话,那其实...

如何设计一个java系统与另外两个系统实现对接通信?
一般是用webservice来实现这种对接需求。你可以先整理一下有多少个功能点需要从你这获取数据(归纳统计共需要多少个webservice接口)然后逐个webservice确认需要哪些参数进行查询 写一个webservice接口文档提供给银行那边的系统开发人员即可

idea创建java项目怎么运行?
idea编写java程序1、打开IDEA软件,点击界面上的CreateNewProject。2、首先,你需要将你的Java程序打包成一个Android应用程序。在Android应用程序中,有一些需要获取的权限,例如网络权限、读写SD卡权限等等。这些权限可以在AndroidManifest.xml文件中设置。3、idea运行java程序的关键操作是关联本地JDK和设置程序...

刚培训完java,现在有两个机会,一个外包公司给国家电网做项目,一个做...
这个要看你发展方向咯。外包公司,工薪方面待遇肯定要好。但是可以说是出卖青春。短时间的肯定是外包好,收入多。长时间的当然还是去交通,待遇一般,但是这个待遇是跟随这在公司的工龄增加,外包有外包的好处,非外包有非外包的好处。家境还行,以后也想稳定就去非外包吧,如果现阶段需求比较大,那就去...

java中两个线程同时运行,如何在一个线程抛出异常时将两个线程同时中断或...
public class Dfdsfasdfasdfa { public static void main(String[] args){ MyTask t1 = new MyTask("1"); MyTask t2 = new MyTask("s"); t1.start(); t2.start(); try{ t1.join(); t2.join(); if(t1.getIsEnd()&&t2.getIsEnd()){ System.out...

我用eclipse编写了程序 怎么在一个电脑上运行客户端和服务器端的程序...
运行:单击“运行”图标后的小三角, 先运行服务器端(Server),在运行客户端(Client),这两次运行即可,重复运行就会报错。但此时控制台只显示一个结果。单击控制台右上方图标中的“显示选择的控制台”后的小三角,来回切换要显示的控制台,即可分别查看服务器端和客户端的运行结果。 本回答由网友推荐 举报| 答案纠错 |...

这个JAVA程序为什么能通过编译而不能执行???
() OK,准确地说,一个Java源程序中可以定义多个类,但是,具有public属性的类只能有一个,而且要与文件名相一致。还有,main方法一定要放在这个public的类之中,这样才能java(运行)这个类。另外一点是Java语言里面是严格区分大小写的,初学者要注意呀。像上例中 helloworld 与 HelloWorld 就认为是不一样,因而...oh.....

在Java程序的一个包中的一个类里用了主函数,那么在另一个类中可以再用...
可以。比如你的程序Test.java中有两个类,分别为class A{} class B{},这两个类中都可以有main()函数,当你编译完文件后,即javac Test.java后,如果想运行A类中的main()方法就用java A,如果想运行B类中的main()就用java B 如果还不明白就HI我吧 ...

相似回答
大家正在搜