Pessoal, eu criei um aplicativo no NetBeans que está funcionando direitinho dentro do NetBeans. Eu terminei o aplicativo e preciso roda-lo fora do NetBeans.
Muito bem…fui no NetBeans, apertei F11 e ele criou o meu arquivo .jar.
Só que quando eu dou dois cliques no arquivo, ele não executa. Já procurei por vários tópicos aqui e não resolvi o meu problema. Vou postar aqui o código do meu aplictativo. Eu tenho dois arquivos… são eles: Main.java e Ctrl_Principal.
Segue o código do Main.java:
package Control;
import javax.swing.UIManager;
public class Main {
public static void main(String args[]) {
try
{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch (Exception e)
{
System.err.println("Não foi possivel setar lookandfeel: " + e);
}
Ctrl_Principal roda = new Ctrl_Principal();
roda.run();
}
}
E o Ctrl_Principal.java (em partes):
package Control;
import java.awt.Component;
import java.awt.Dimension;
import java.awt.Toolkit;
import java.sql.*;
import java.util.Date;
import java.util.Calendar;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Arrays;
import java.util.HashMap;
import java.util.regex.PatternSyntaxException;
import javax.swing.JOptionPane;
import javax.swing.JTextField;
import javax.swing.RowFilter;
import javax.swing.UIManager;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
import javax.swing.table.TableModel;
import javax.swing.table.TableRowSorter;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.view.JasperViewer;
import org.apache.commons.validator.DateValidator;
public class Ctrl_Principal extends javax.swing.JFrame {
private final static String driver = "com.mysql.jdbc.Driver";
private final static String url = "jdbc:mysql://localhost:3306/sistema";
private final static String username = "root";
private final static String password = "windows";
private Connection con;
private Statement sforn, scli, sprod, st_parametros, st_entrada, st_itens_entrada, st_saida, st_itens_saida, st_movimentacao;
private ResultSet forn, cli, prod, rs_parametros, rs_entrada, rs_itens_entrada, rs_saida, rs_itens_saida, rs_movimentacao;
int registros = 1;
int procura = 0;
int procura_cli = 0;
int procura_prod = 0;
int itens_entrada = 0;
int itens_saida = 0;
int estoque_atual = 0;
int estoque_final = 0;
int codigo_produto = 0;
public void run()
{
Ctrl_Principal barra = new Ctrl_Principal();
barra.setVisible(true);
barra.setExtendedState(Ctrl_Principal.MAXIMIZED_BOTH);
barra.openDB();
barra.abre();
barra.celulas();
barra.lista_fornecedor();
barra.lista_produtos();
barra.mostra();
barra.lista_clientes();
barra.mostra_cliente();
barra.mostra_produto();
barra.mostra_parametros();
}
Nas Propriedades do projeto dentro do NetBeans eu coloquei o seguinte, conforme eu li em outros tópicos: CLASSE PRINCIPAL: CONTROL.MAIN. (vide figura abaixo)
Coloquei como arquivo que possui o main como classe principal.
Rodei o F11 paa gerar o arquivo .jar, ele gerou certinho, mas quando eu dou dois cliques nele, aparece a mensagem:
e não abre.
Eu vi o arquivo MANIFEST.MF dentro do arquivo .jar e está da seguinte maneira:
Não sei mais o que fazer…Alguém pode me dizer o que está de errado? O que eu tenho que fazer pra rodar esse aplicativo fora do NetBeans?
Valeu!!!