Runtime.exec() Problem.
Mike Boilen
mgb at cs.brown.edu
Sun Sep 6 08:43:41 PDT 1998
What version of Kaffe are you using? I know there were a bunch of
patches to Runtime.exec() since 1.0b1 was released. You might want to
try using the latest kaffe-snap and see if that helps.
Mike
On Sun, Sep 06, 1998 at 10:33:50AM -0400, Patrick W. O'Neill wrote:
> Hello, I'm relatitivly new to Java, and even moreso to Kaffe. We have a
> demonstration that runs only on Linux. This demo generates a logfile,
> which is read by our java program to display graphically what is going
> on. Previously, we would generate the logfile on a Linux machine, and
> run the Java demo on Solaris with the JDK. We would like to be able to
> generate the logfile on the fly, so our only option is to run the Java
> demo on the linux machine. That is where Kaffe comes in.
>
> We had to do a lot of updating of our code, the books we had were 1.0
> books, and JDK is more forgiving of deprecated functions than Kaffe is,
> so we had no need to use 1.1 code until we decided to use Kaffe. We got
> that all straightend out, but we're having one main problem. We need to
> run our program from inside our java demo, this would lead me to using a
> Runtime.exec("command line") call. This works fine under JDK, but I'm
> having a problem running this with Kaffe. Here is some sample code...
>
>
> public class Test{
> public static void main(String[] args) {
> Runtime r = Runtime.getRuntime();
> System.out.println("Hello World!");
> try {
> r.exec("gcc test.c");
> }
> catch(java.io.IOException e) {
> System.out.println(e);
> }
> }
> }
>
> No matter what the command is, we get
>
> java.io.IOException: No such file or directory
>
> I just tried an example using full path names, we don't get the
> exception, but the command just plain doesn't get executed.
>
> I also tried some code I found in the comp.lang.java.help newsgroup...
>
>
> public class HelloWorld{
> public static void main(String[] args) {
> try {
> String cmd = "/usr/bin/ls -l /opt/java/bin";
> String line = null;
> Process p = Runtime.getRuntime().exec(cmd);
> BufferedReader lsOut = new BufferedReader
> (new InputStreamReader
> (p.getInputStream() ) );
> while( ( line=lsOut.readLine() ) != null) {
> System.out.println(line);
> }
> }
> catch (Exception e) {
> System.err.println("ls error " +e);
> }
> }
> }
>
>
> But I get the same error. Any ideas as to why this might be happening or
> how to fix it? Thanks.
>
>
> Pat
>
>
More information about the kaffe
mailing list