olá pessoal
tenho meu programa em java
e disponibilizo para o cliente criando um jar
qual a melhor maneira de eu controlar, para que o usuario não execute 2 ou mais vezes o jar ?
obrigado
Vc pode
1->Toda vez que o programa iniciar criar um “look” apartir de um arquivo, similar ao que o eclipse faz, quando inicia a execução verifica se há um arquivo em um lugar, se não houver vc cria, dai quando o segunda execução for feita vai ver que tem um arquivo e não proceguir.
2->Usando a mesma “tecnica”, vc pode usar a API java.util.prefs e ao invés de ficar controlando em arquivos, usar a parte de registro da maquina/usuário.
[quote=BrunoCarlo]Vc pode
1->Toda vez que o programa iniciar criar um “look” apartir de um arquivo, similar ao que o eclipse faz, quando inicia a execução verifica se há um arquivo em um lugar, se não houver vc cria, dai quando o segunda execução for feita vai ver que tem um arquivo e não proceguir.
2->Usando a mesma “tecnica”, vc pode usar a API java.util.prefs e ao invés de ficar controlando em arquivos, usar a parte de registro da maquina/usuário.
[/quote]
E ai pessoal…
Ocorreu a seguinte idéia… e se o aplicativo for interrompido, ou se a máquina por exemplo travar… e o usuário necessitar reiniciar… o arquivo ficará lá…e impedirá o prosseguimento…
Abraços
[quote=suspiro10][quote=BrunoCarlo]Vc pode
1->Toda vez que o programa iniciar criar um “look” apartir de um arquivo, similar ao que o eclipse faz, quando inicia a execução verifica se há um arquivo em um lugar, se não houver vc cria, dai quando o segunda execução for feita vai ver que tem um arquivo e não proceguir.
2->Usando a mesma “tecnica”, vc pode usar a API java.util.prefs e ao invés de ficar controlando em arquivos, usar a parte de registro da maquina/usuário.
[/quote]
E ai pessoal…
Ocorreu a seguinte idéia… e se o aplicativo for interrompido, ou se a máquina por exemplo travar… e o usuário necessitar reiniciar… o arquivo ficará lá…e impedirá o prosseguimento…
Abraços[/quote]
Bom, nenhum, digo, nenhum controle que conheço é livre de falhas, o que se pode fazer neste caso é implementar mais controles… ou colocar um controle mais esperto, do estilo, pega a lista de processos exeuctados no SO, e veja se algum deles é a execução do dito JAR… isto resolveria, dai bate sempre a pergunta: qual o tamanho do controle que vc quer/precisa para isto?
[quote] BrunoCarlo
Bom, nenhum, digo, nenhum controle que conheço é livre de falhas, o que se pode fazer neste caso é implementar mais controles… ou colocar um controle mais esperto, do estilo, pega a lista de processos exeuctados no SO, e veja se algum deles é a execução do dito JAR… isto resolveria, dai bate sempre a pergunta: qual o tamanho do controle que vc quer/precisa para isto?
[/quote]
Não, no momento nenhum, é que quando li o post surgiram estas dúvidas… porque o netbeans tem algo que creio que seja parecido, às vezes mostra uma mensagem que uma instância ja foi inicializada, ai mostra a mensagem para que a pessoa continue o processo de inicialização, caso não haja outra instancia em execução.
Não, no momento nenhum, é que quando li o post surgiram estas dúvidas… porque o netbeans tem algo que creio que seja parecido, às vezes mostra uma mensagem que uma instância ja foi inicializada, ai mostra a mensagem para que a pessoa continue o processo de inicialização, caso não haja outra instancia em execução.
[/quote]
Entendi, pois é, como o netbeans trata eu não sei, mas no eclipse, ele não bloqueia duas instancias rodando, mas duas no mesmo workspace, dai para isto ele cria um arquivo chamado .lock dentro do diretorio .metadata, que é o “controle” dele.