Olá pessoal! Sei que jah existe outros trocentos topicos sobre o assunto, porém nenhum resolveu meu problema.
Eu estou desenvolvendo um sistema desktop aqui para a empresa, porém existe um certo alguém (superior a mim) que não deixa de usar o Win98 e não aceita falar que tah ultrapassado rsrsrsrs… Pois bem! Estou tendo aquele famoso probleminha que quando tento executar o JAR me retorna a mensagem: “Could not find the main class. Program will exit.”
As versões do Java é a mesma, o Classpath, Path e JAVA_HOME estão configurados. E na hora de exportar meu JAR no Eclipse, eu defini minha main class e nela existe o “public static void main bla bla bla…”
Eu nunca gostei de chamar um programa clicando diretamente sobre o JAR, porque dessa forma não consigo passar os parâmetros adequados.
Eu normalmente escreveria uma batch (digamos que você crie um arquivo com o nome “sistema.bat” , e no Windows 98 seria mais ou menos assim:
start javaw -classpath SeuJar.jar;JarBancoDados.jar;JarUtilitarios.jar seu.pacote.sua.Classe seus parametros
onde “start” é um comando do DOS, “javaw” é o nome do arquivo “javaw.exe” que você precisa para iniciar o Java nessa máquina Windows 98, “seujar.jar” é o jar do seu programa, “jarbancodados.jar” e “jarutilitarios.jar” são os outros jars que você precisa para rodar o programa, “seu.pacote.sua.Classe” a classe principal do seu programa (aquela que tem o “main”), e “seus parametros” algum parâmetro adicional que você precise para rodar o programa.
Você então põe um atalho no menu Iniciar ou então no desktop (Área de Trabalho) para essa batch.
Vai aparecer por um segundo uma janelinha preta (esse é um dos inconvenientes de uma batch), mas pelo menos o programa deve rodar direitinho. Se não estiver rodando direito, troque “javaw” por “java”, que vai aparecer uma tela preta com as exceptions que ocorreram (por exemplo, se você esqueceu de copiar algum jar para a máquina do seu chefinho…)
Outra dica: eu normalmente não gosto de configurar o CLASSPATH nem o JAVA_HOME. Como rodo N versões de Java na minha máquina e com N programas diferentes, se eu for configurar o CLASSPATH a cada vez que for rodar algum de meus programas eu fico doido. Eu prefiro explicitar o CLASSPATH na linha de comando, tal como mostrei acima com o parâmetro “-classpath” que passo para o javaw.exe.
Rapaz… Salvou minha vida! E com certeza é muito melhor fazer desse jeito. Eu crio arquivos bath para resolver uns probleminhas aqui do sistema em Clipper, mas não tinha pensado nisso antes.
Agora soh falta acertar o jar do banco de dados, pq tah dando erro de conexão.
Ontem o GUJ não entrava por nada aqui à tarde e eu acabei me enrolando com umas coisas. Porém ainda estou tendo um problema, quanto à conexão com o banco. Vou lhe mostrar como estou fazendo. Tem algo errado?