Java 7 ee 8 coexistindo no Windows 7 Pro x64 - como corrigir a execução de arquivos jar antigos

1

Eu tenho um Win7 Pro x64 Box com ambos os JRE 7u80 e 8u60 (ambos são versões i586) em execução desde que eu tenho dois aplicativos que precisam de um ou outro para ser executado.

Estou ciente de poder iniciar arquivos JAR chamando um lote com o caminho correspondente a java.exe, foi o que tentei:

start "c:\Program Files (x86)\Java\jre7\bin\java.exe" "c:\samplepath\some.jar"

(deve ser

start "c:\Program Files (x86)\Java\jre7\bin\java.exe" -jar "c:\samplepath\some.jar"

de acordo com a documentação, mas o switch -jar leva a um erro que -jar não pôde ser encontrado)

Essa chamada inicia o aplicativo sem problemas, desde que o Java 8 não esteja instalado, o que me leva à conclusão de que provavelmente está ok.

Enquanto o Java 8 é instalado, essa chamada não "nada" - bem, quase. Eu posso ver o processo de java no gerenciador de tarefas por alguns segundos, então ele desaparece sem um traço, não há nenhuma mensagem de erro ou qualquer outra coisa.

Eu até excluí a entrada Java de% path% e reiniciei, alterei a ordem das instalações do JRE, desativei o Java 8 no painel de controle Java, sem sorte. Se o Java 8 estiver instalado, meu jar não será executado.

Falar com o desenvolvedor não é uma opção, pois ele não está mais disponível. Eu estou sem ideias aqui. Alguém pode me ajudar com o que eu poderia tentar em seguida?

Agora eu mantenho os arquivos de instalação na área de trabalho para instalar e descarregar o Java 8 sob demanda, o que é uma maneira bastante ridícula e desesperada de lidar com isso: -)

    
por beerbear 28.08.2015 / 21:16

1 resposta

1

Mas o switch -jar leva a um erro que -jar não foi encontrado

Sua sintaxe iniciar 'está incorreta:

  • Se não houver title e command estiver entre aspas "..." (porque contém espaços), será interpretado como title .

  • No seu caso "c:\Program Files (x86)\Java\jre7\bin\java.exe" é interpretado como title e -jar como um comando (o que obviamente não pode ser encontrado).

Seu comando deve ser:

start "title" "c:\Program Files (x86)\Java\jre7\bin\java.exe" -jar "c:\samplepath\some.jar"

Você pode usar "" (string vazia) como title , se preferir:

start "" "c:\Program Files (x86)\Java\jre7\bin\java.exe" -jar "c:\samplepath\some.jar"

Sintaxe

START "title" [/D path] [options] "command" [parameters]

Key:

title       Text for the CMD window title bar (required.)
path        Starting directory.
command     The command, batch file or executable program to run.
parameters  The parameters passed to the command.

...

Always include a TITLE this can be a simple string like "My Script" or just a pair of empty quotes ""

According to the Microsoft documentation, the title is optional, but depending on the other options chosen you can have problems if it is omitted.

Origem comece

Leitura Adicional

por 28.08.2015 / 22:38