Dúvida .class transformado para .jar não sai na linha de comando

7 respostas
S

É simples:

import java.util.Scanner;

public class Tst
{
	public static void main( String args[] )
	{
		Scanner input = new Scanner( System.in );
		
		System.out.println("Digite seu nome: ");
			String nome = input.nextLine();
			
		System.out.println("Bem Vindo " + nome);
		
		
	}

}

Quando faço o .Jar e vou executar ele dando um duplo click eu esperava que ele executasse na linha de comando mas ele não abre nada.
Já defini a Main Class e uso o Eclipse.

Agradeço quem puder ajudar!

Abraços!

7 Respostas

M

pra que vc criou um arquivo .jar para rodar esse esquema ae??? :shock:

S

Isso ae é só um exemplo.

Na verdade eu prentendo fazer um programa sem interface gráfica só que se eu fizer isso parece que não da certo =/

Abraços!

M

explique melhor o que vc quer fazer… e explique o que não está dando certo também…

o que nao roda?

S

Explicando melhor…

Se eu abrir a linha de comando e digitar java Tst ele executa normal! Porém para que alguém consiga executar ele desse jeito teria que ter o JDK instalado certo? Eu não quero que a pessoa precise instalar o JDK e tenha esse trabalho todo só para executar um arquivo por isso criei o .Jar. Só que quando faço um .Jar dessa classe ai e mando ele executar dando um duplo click normal como se fosse outro programar qualquer ele simplesmente nao abre nada é como se ele mesmo exeutasse o código direto e fechasse a janela de comando igual o Pascal faz se você nao colocar o readkey.

Isso que tá ai é so um exemplo qualquer. O estranho é que se eu usar uma janela Swing para pegar o que ele digitar e retorna funciona normal só desse jeito que não.

Ficou melhor agora?

Se não, pegue essa classe e transforme ela em um arquivo .Jar e tente executar para ver o que acontece. :wink:

Abraços!

M

Acontece que o JARs só funcionam com clique duplo se usarem interface gráfica. Se for por linha de comando, não tem jeito. O cliente deve digitar:

java -jar Tst

Como isso é um pouco incômodo, você pode criar um script que faça isso (um script shell no Linux ou arquivo bat no Windows). Basta entrar em um editor de texto qualquer, digitar o código para executar e salvar o arquivo. Aí, distribua o JAR com o script.

E observação: mesmo sendo um JAR, ao menos o JRE tem que estar instalado no cliente.

DavidUser

alguns ativírus identificam o .bat como ameaça como posso o imunizar sem a interferência do usuário?
pois se deletado não havera mais a execução do processo

se puder me envie uma private message me explicando.

M

DavidUser:
alguns ativírus identificam o .bat como ameaça como posso o imunizar sem a interferência do usuário?
pois se deletado não havera mais a execução do processo

se puder me envie uma private message me explicando.

Esse já se torna um problema maior… Talvez criar um .exe em C que apenas executa a linha de comando ajude. Mas tira, de certa forma, a portabilidade do programa.

Criado 17 de abril de 2009
Ultima resposta 18 de abr. de 2009
Respostas 7
Participantes 4