O que a galera quer saber:
Existe um compilador para java, se chama GCJ, dos mesmos caras que criaram o melhor compilador de C/C++, mas ainda não funciona com AWT nem com SWING.
E ponto final.
O que a galera quer saber:
Existe um compilador para java, se chama GCJ, dos mesmos caras que criaram o melhor compilador de C/C++, mas ainda não funciona com AWT nem com SWING.
E ponto final.
Olás. Tenho uma dúvida e uma solução.
Sou novo em Java (comecei em maio) e neste forum (primeiro post).
Seguinte, o código do jeito que está nesse tutorial do Felipe não funcionou aqui comigo. Tentei fazer o Principal.java e o criarFrame.java separados e compilar o criarFrame e depois o Principal (já que a classe criarFrame está como public), mas dá o seguinte erro:
C:\faz_jar\pacoteJar>javac Principal.java
Principal.java:7: cannot resolve symbol
symbol : class criarFrame
location: class pacoteJar.Principal
new criarFrame();
^
1 error
obs.: o circunflexo deve aparecer sob o c do criarFrame().
Como faz para resolver esse problema deixando separado em dois arquivos (o código é exatamente aquele que o Felipe deixou no tutorial)?
Agora como eu fiz funcionar (em um único arquivo Principal.java):
[code]package pacoteJar;
import javax.swing.*;
public class Principal
{
public static void main(String[] args)
{
new criarFrame();
}
}
class criarFrame extends JFrame
{
public criarFrame()
{
super(“Frame de exemplo”);
setBounds(120,120,250,250);
show();
}
}[/code]
obs.: a classe criarFrame deixa de ser public e as seguintes linhas vão para o início do arquivo:
package pacoteJar;
import javax.swing.*;
Arquivos usados:
c:\faz_jar\manifest.txt
c:\faz_jar\pacoteJar\Principal.java
Olá galera,
tava fazendo o .jar mas n hora de rodar o aplicativo apareceu a mensagem de erro abaixo:
Could not find the main class. Program will exit.
O meu arquivo manifest.txt tava da seguite forma:
Main-Class: C:\tutorial\pacoteJar\Teste.java
Name: C:\tutorial\pacoteJar\Teste.class
Java-Bean: True
poderiam me ajudar pessoal…
valeu…
T+[/i]
Usa desse jeito:
Main-Class: pacoteJar.Principal
Name: pacoteJar/Principal.class
Java-Bean: True
Se você mudou a classe para Teste usa assim:
Main-Class: pacoteJar.Teste
Name: pacoteJar/Teste.class
Java-Bean: True
teste
Galera quando tento executar um jar pelo prompt recebo a seguinte mensagem
Exception in thread “main” java.lang.NoClassDefFoundError: pacoteJar/Principal
Alguém sabe o porque disto?
Outra coisa --> Quando tento executar um jar pelo ícone, ele me abre o winzip. Isto está correto?
1º erro: compile a partir de um diretório antes (quando usa 2 arquivos tem que ser assim, se fizer num arquivo só como eu expliquei no meu outro post não precisa).
2º erro: windows explorer -> ferramentas -> opções de pasta -> escolhe a aba tipos de arquivos -> procura por “Executable Jar File” -> altere o open para:
“C:\Arquivos de programas\j2sdk1.4.1_02\bin\javaw.exe” -jar “%1” %*
OBS.: mude o endereço para se adequar ao seu sistema
Ah, antes dá uma olhada no winzip e desvincula a extensão.
Um xunxo no win98 p/ fazer isso é apertar o shift e clicar num arquivo .jar com o botão direito, aí no “Abrir com…” você procura o seu javaw. Depois só modifica como eu expliquei anteriormente.
Não esqueça de marcar o “sempre usar esse programa…” no “abrir com…”
Descobri uma maneira de criar executáveis! E o negócio realmente funciona.
E realmente não sei pq todos ficam fazendo segredo a respeito desse programa…
Para isso usa-se o programa [color=“red”]Excelcior JET.[/color]
Aproveitem.
[quote=“JavaDrops”]1º erro: compile a partir de um diretório antes (quando usa 2 arquivos tem que ser assim, se fizer num arquivo só como eu expliquei no meu outro post não precisa).
2º erro: windows explorer -> ferramentas -> opções de pasta -> escolhe a aba tipos de arquivos -> procura por “Executable Jar File” -> altere o open para:
“C:\Arquivos de programas\j2sdk1.4.1_02\bin\javaw.exe” -jar “%1” %*
OBS.: mude o endereço para se adequar ao seu sistema[/quote]
JavaDrops,
Não entendi muito bom a questão do 1o erro.
Estou com o mesmo problema, criei um .Jar via Eclipse, quando dou um duplo clique no arquivo ele nao faz nada, se vou via Prompt e uso o java -jar, ele me retorna o seguinte erro: Exception in thread “main” java.lang.NoClassDefFoundError: janelaprincipal
at Principal.main(Principal.java:18)
Acredito que estou fazendo tudo certo via Eclipse, pois preencho todos os campos solicitados e o próprio eclipse gera meu Manifest. O que pode ser isso?? Agradeço a ajuda!
Então, no meu caso (usando o package pacoteJar) estava dando esse erro:
Exception in thread “main” java.lang.NoClassDefFoundError: pacoteJar/Principal
Isso pq eu estava compilando dentro do diretório
c:\faz_jar\pacoteJar
com o comando
javac Principal.java
Mas o certo era compilar dentro do diretório
c:\faz_jar
com o comando
javac pacoteJar\Principal.java
Mas isso na linha de comando, não sei como funciona com o Eclipse.
:twisted:
Esse tutorial ficou legal…
É esse tipo de contribuição que transforma o PJ na maior comunidade Java do Brasil…
WS
como criar o .jar pelo NetBeans 3.6??? Alguem pode passar um passo-a-passo ?
galera no meu roda bonitinho, criei o jar redondinho, o executável tbm roda que é uma beleza só que em outros computadores não roda de jeito nenhum…
eu passo o .jar ou o .exe mas nda…
dá sempre o mesmo erro nos outros computadores, could not find main class… ou coisa assim…
oq eu tô fazendo de errado?? tem q mandar a classe junto ou o alguma outra coisa???
:sad: :sad: :sad:
[quote=“Felipepontojava”]galera no meu roda bonitinho, criei o jar redondinho, o executável tbm roda que é uma beleza só que em outros computadores não roda de jeito nenhum…
eu passo o .jar ou o .exe mas nda…
dá sempre o mesmo erro nos outros computadores, could not find main class… ou coisa assim…
oq eu tô fazendo de errado?? tem q mandar a classe junto ou o alguma outra coisa???
:sad: :sad: :sad:[/quote]
Felipe, essa outra máquina tem que ter o JVM.
Além disso a extensão .jar tem que estar adequadamente associada ao Java.
Para Win98 e usando j2sdk1.4.2_08:
Observações:
O que fazer se o .JAR não estiver associado a um dos nomes que eu indiquei:
Valeu JavaDrops tua explicação vai ficar guardada, eu sabia que tinha que ser configurado para o windows reconhecer o .jar mas ainda não sabia como, já tinha olhado em alguns lugares mas ainda não tinha encontrado como fazer…
agora já me liguei como faz!!.. valeu…
cara soh tem um probleminha… eu estou passando minha aplicação para end users que não conseguem fazer essa configuração… e eu nem tenho como fazer essa configuração no pc deles remotamente…
eles tem a JVM(ou JRE) pois eu testei fazendo eles entrarem em alguma páginas que utilizam o java para carregam corretamente…
soh q como o .jar sem prévia configuração não eh possível a execução da aplicação então eu criei um .exe… porém nem com esse .exe eles entraram!!! como eh possível isso… eu criei um .exe que ficou bem, leve, com o JSmooth… ele aumenta um pouco mais que o .jar apenas, não chega a incluir a jvm dentro do .exe mas mesmo assim, eu entro e eles não entram… galera eu estou perdido…
se alguém souber oq está acontecendo…
e tiver como me dar uma mão… valeu!!!
Não entraram como? Não executa? Dá mensagem de erro?
Sei que com applet pode dar problema dependendo da versão do plugin que a pessoa tem instalado ou da JVM e que é bom compilar com:
javac classe.java -target 1.1
Mas não sei se isso vale para aplicativos também.
para end users eu fiz um executável, pra não ter q configurar o .JAR soh q quando clicam lá eme diz: could not find main class…
e no meu computador executa certinho… pq será isso???
me falaram pra mandar o arquivo com um .bat, soh q eu gostaría de poder mandar apenas um arquivo…
:sad:
tem q ser possível, qual a melhor maneira de entregar um projeto a um cliente por exemplo, vc não passaría apenas um arquivo para ele executar???
Tem que ver se o CLASSPATH está certo e se a JRE deles é compatível com a versão na qual você compilou.