Als ik in Linux (Ubuntu) vanuit Java een commando uitvoer d.m.v. Runtime.Execute(String), dan werkt het prima, totdat ik het huidige classpath meegeef in het commando.
Bijv. het commando (waarbij ik een nieuw classpath meegeef) werkt prima:
Maar het volgende commando (waarbij ik het huidige classpath meegeef, dat ook de junit.jar bevat) werkt niet. Hij is dan niet in staat om de klassen te lokaliseren.
Als ik echter het commando
handmatig uitvoer in de terminal (dus zonder Runtime.execute), dan werkt het wel naar behoren.
Iemand een idee waar dit aan ligt?
Edit: onder Windows doet dit probleem zich niet voor.
Bijv. het commando (waarbij ik een nieuw classpath meegeef) werkt prima:
code:
1
| Runtime.getRuntime().exec("java -cp /home/tmp/junit.jar pacman.TestAll"); |
Maar het volgende commando (waarbij ik het huidige classpath meegeef, dat ook de junit.jar bevat) werkt niet. Hij is dan niet in staat om de klassen te lokaliseren.
code:
1
| Runtime.getRuntime().exec("java -cp $CLASSPATH pacman.TestAll"); |
Als ik echter het commando
code:
1
| java -cp $CLASSPATH pacman.TestAll |
handmatig uitvoer in de terminal (dus zonder Runtime.execute), dan werkt het wel naar behoren.
Iemand een idee waar dit aan ligt?
Edit: onder Windows doet dit probleem zich niet voor.
[ Voor 3% gewijzigd door Verwijderd op 13-08-2008 22:33 ]