i face a problem here..

i am creating a compiler for java, the compilation part is done,and now i have a problem in the running the class compiled..

i use the runtime.getruntime().exec() method to run the class..

and what happen is, for example, i have a simple java file like

public static void main(String[]args)
{
System.out.print("This message");
}
and i run this class

it will show a line in the command prompt "this message",but after that it will closed straigth away, thus, the user has no chance to see the output of the class..

can anyone help me, sorry for my bad english
hope that you all understand
thanks

Re: Runtime.getruntime.exec(); for my java compiler 80 80

can u tell where u r running ur program in command prompt or any other java compilation software.
reply as soon.

Re: Runtime.getruntime.exec(); for my java compiler 80 80

If you are running in Windows, try prefacing the command with "cmd /c start ";

Re: Runtime.getruntime.exec(); for my java compiler 80 80

you are not creating a compiler, you're creating a program that tries to call a compiler someone else created.

The reason your output is not retained is likely because you're launching another process which under Windows means another command shell, which gets closed as soon as that process completes.

And all that when you don't have to create another process at all, but can run any public method in any Java class from any method in any other Java class as long as the class you want to access is on the classpath.

Re: Runtime.getruntime.exec(); for my java compiler 80 80

Well in that case I simply add a readline statement after the print statement. So unless and until you don't press a key it won't exit.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of 1.18 million developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.