Executar outra aplicação a partir do java

Olá estou tentando rodar uma outra aplicação a partir de um aplicativo java,porém estou tendo alguns problemas…

Quando tento

Runtime.getRuntime().exec("java -jar C:\\RCVNA\\PreventivaApp.jar");

ele funciona,porém quando tento algo como

Runtime.getRuntime().exec("java -jar C:\\Documents and Settings\\F8051921\\My Documents\\Projetos\\Preventiva\\Src\\PreventivaApp\\dist\\PreventivaApp.jar");

ou

Runtime.getRuntime().exec("java -jar %programfiles%\\RCVNA\\PreventivaApp.jar");

Ele simplesmente não abre… a opção mais ideial seria conseguir que a ultima opção funciona-se…

Alguma sugestão?

Ninguem?

Não tenho ctza, mas acho que vc pode estar tendo 2 problemas diferentes.
No primeiro caso, seria por conta dos espaços.
No segundo caso, por conta da variável de ambiente. Deve haver uma forma específica de se referir a variáveis de ambiente.

O problema realmente é por causa dos espaços no primeiro caso. você tem que inserir as aspas, tente assim:Runtime.getRuntime().exec("java -jar \"C:\\Documents and Settings\\F8051921\\My Documents\\Projetos\\Preventiva\\Src\\PreventivaApp\\dist\\PreventivaApp.jar\"");

Obrigado Rodrigo e rodpuc,desta maneira funcionou, mais gostaria de saber se não tem realmente como chamar por variavel do sistema?
Utilizar ou %programfiles% ou %SystemRoot% ficaria mais simples pois independente se o HD estiver mapeado como C: D: ou H: sempre cai no lugar certo…

É só declarar a variável.

Mas ela também terá que ter as aspas.

Agora o que garante que a pessoa vai ter essa variável definida ?