Como rodar meu programa JAVA feito no Intellij fora do Intellij?

Ok. Então, eu sou iniciante (comecei há poucos dias), e estou com uma dúvida de noob, mas criei uma conta só pra perguntar isso, se alguém puder me responder :slight_smile: .

Eu criei um pequeno e simplório programa no Intellij. É um programa onde eu pergunto coisas, o usuário insere dados e eu crio frases com esses dados.

Ok. Eu quero saber como faço pra rodar este programa fora do Intellij. Tipo, como um programa normal, onde eu clico 2 vezes em seu ícone e ele abre, e aí ele conversa com o usuário como programei ele pra fazer. Não quero vê-lo como admiinstradora ou seila, quero ver o programa como o usuário.

Alguém pode me esclarecer como faço pra chegar nisso?
Obrigado

Há alguns pontos ainda.

  • O programa que você fez é executado apenas no terminal (output) do Intellij? Ou tem uma interface gráfica?

  • Foi feito em JavaFX ou Java Swing?

  • Qual a sua versão do Java?

Boa tarde. Obrigado por me responder.

O programa que você fez é executado apenas no terminal (output) do Intellij? Ou tem uma interface gráfica? R: Só sei executar no terminal do Intellij. Ainda sou ignorante sobre como criar uma interface gráfica.

  • Foi feito em JavaFX ou Java Swing?
    Em nenhum desses. Vou postar meu programa abaixo.

  • Qual a sua versão do Java?
    Do Java normal instalado no computador é: versão 8 atualização 251
    Do JDK é: jdk1.8.0_131

Eu consegui criar um ARTEFATO .JAR, mas foi só até aí onde cheguei.
Quando clico nele, nada acontece. Falta a interface gráfica, creio eu. Devo baixar algum programa além do Intellijj? Eu apenas quero que estes textos apareçam numa janela, da forma como aparecem no terminal.

Aqui está meu programa teste:

import java.util.Scanner;
public class Project {

  public static void main ( String [] args ) {

        Scanner resposta = new Scanner (System.in);
      System.out.println("Olá! Seja bem vindo(a) ao Planejador de Viagens 1.0!");
      System.out.print("Como é seu nome?");
String nome = resposta.nextLine();
System.out.println("Prazer em conhecê-lo(a), " + nome + "!");
System.out.println("Agora, me conte um pouco mais sobre sua viagem para que eu possa ajudá-lo(a) a planejá-la! ");
System.out.print("Para onde você está planejando viajar?");
String local = resposta.nextLine();
System.out.println("Uau! " + local + " parece ser um lugar incrível!");
      System.out.println("Agora, vamos aos detalhes.");
      System.out.print("Diga-me exatamente quantos dias você pretende passar em " + local + ", por favor. ");
      int diasDeViagem = resposta.nextInt();
System.out.println("Perfeito!");
System.out.print("E qual é a quantidade total de reais da qual você dispõe para essa viagem? ");
double orçamento = resposta.nextDouble();
System.out.println("Por favor, em seguida, digite a natureza da moeda corrente de seu destino.");
      System.out.println("Se for dólar, você pode digitar \"dólares\"; se for euro, \"euros\", se for reais, digite \"reais\", se for alguma outra, digite o nome adequado e no plural de preferência.");
      System.out.print("Caso prefira, você pode digitar o código da moeda.Por exemplo: USD, EUR, BRL, ou o que for o correto para seu destino:");
      String moeda = resposta.next();
System.out.println("Muito bem! Informe agora a atual Taxa de Conversão dos reais para " + moeda + ",por favor!");
      System.out.print("Quanto vale uma moeda do seu local de destino em reais? Se você for viajar para um destino de dentro do Brasil, digite 1.");
      double conversão = resposta.nextDouble();
System.out.println("Certo! Isso era tudo que eu precisava! Aqui está o que você precisa saber sobre a viagem:");
double reaisPorDia = orçamento/diasDeViagem;
double conversãoEmMoedaEstrangeira = orçamento/conversão;
double moedaDeDestinoPorDia = conversãoEmMoedaEstrangeira/diasDeViagem;
System.out.println(" Seu orçamento total, em " + moeda + ", é o equivalente a " + conversãoEmMoedaEstrangeira + " " + moeda + "!");
      System.out.println("Isso significa que você pode gastar o total de " + moedaDeDestinoPorDia + " " + moeda + " por dia em " + local + "." );
      System.out.println("Convertendo em reais, você pode gastar o total de R$"+ reaisPorDia + " por dia de viagem!");


  }


}

Certo, isso foi feito em Java Swing usando apenas o terminal como “interface”.

Exatamente, se houvesse algum componente gráfico ele mostrava… Mas como você disse que já gerou o .jar, você precisa executar ele assim agora (no CMD/Terminal):

java -jar C:\caminho\nomeDoArquivo.jar

Perguntei sobre a versão do Java, pq as mais recentes são um tanto quanto chatinhas pra gerar o arquivo final.

Então, não sei se você sabe, mas o compilador Java não gera código executável para o seu sistema operacional, ele gera código para a máquina virtual Java.

Então se você quer um “executável” para sua aplicação, esse executável é o java.exe ou javaw.exe.

Você vai chamar um desses dois programas e passar a sua classe ou o seu JAR como parâmetro.

Você pode criar um atalho para o Java e nesse atalho configurar pra executar sua classe ou jar e também definir um ícone.