Iniciar programa compactado (.jar)

9 respostas
luizpicolo

Primeiro de tudo bom dia.
Bem, eu estou criando, ou pelo menos tentando, criar um programa simples em Java.
Estou utilizando um estrutura MVC básica

DAO
Factory
GUI
Models

Bem, minha dúvida é a seguinta, quando vou compactar, ou seja, criar o .jar, o Eclipse me pede a classe Main.
Como eu faria para criar uma classe main que chama-se minha tela principal, como por exemplo, a tela principal que fica
dentro da camada GUI (GUI/main).

Porém, se este modo está errado, por favor, me instruam para o caminho da luz…

9 Respostas

Demys_Cota

Vc deve indicar a classe que possui o

public static void main(String[] args)(){}

é classe que vai roda sua aplicação.

Demys_Cota

por exemplo: se sua classe TelaPrincipal tem o public void main é ela que vc deve indicar.

luizpicolo

Bom dia.
Sim, mas eu posso inicar uma diretamente na camada GUI ou tenho quer criar um na raiz da aplicação?

TerraSkilll
Isso em Java Swing? Se você consegue rodar sua aplicação pelo Eclipse, ela já deveria ter uma classe principal. Em todo caso, o visual geral de uma classe "principal" para uma aplicação Swing é algo mais ou menos assim:
import javax.swing.SwingUtilities;

public class Example extends JFrame {

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                ClasseSwingPrincipal ex = new ClasseSwingPrincipal();
                ex.setVisible(true);
            }
        });
    }
}
Fonte: [url]http://zetcode.com/tutorials/javaswingtutorial/firstprograms/[/url]

Note que você precisa substituir a classe chamada ClasseSwingPrincipal pela classe correspondente á tela principal do seu sistema que, pelo que você disse, está dentro do pacote GUI.

Abraço.

luizpicolo

Outra dúvida.
Existe o Swing, que é o que estou usando. Porém, há outros Frameworks (Não sei exatamente se o Swing é um Framework) com o mesmo intuito que ele?

Demys_Cota

Há outras bibliotecas, porém a maioria tem como base a classe swing.

http://www.jgoodies.com/

jgoodies é um bom exemplo de biblioteca com muito recursos.

TerraSkilll

luizpicolo
Além das bibliotecas baseadas no Swing (como o citado jgoodies e o SwingX), há outras opções independentes dele, como o javafx 2 (bastante evoluído, e deve substituir o Swing como padrão), o SWT (usado para construir o Eclipse), Apache Pivot e Qt Jambi (wrapper para o Qt), dentre outros. Uma pequena visão deles: http://stackoverflow.com/questions/7358775/java-gui-frameworks-what-to-choose-swing-swt-awt-swingx-jgoodies-javafx.

Abraço.

luizpicolo

Cara, eu tentei usar o JGoodie, mas alguém tem um tutorial legal ai, ou poderia explicar, como utilizar?

rmendes08

A bola da vez para fazer interfaces em Java é o JavaFX.

Criado 15 de maio de 2013
Ultima resposta 15 de mai. de 2013
Respostas 9
Participantes 4