Eclipse não encontra classe main

Tenho o seguinte código:

[code]package componentes.vizuais;
import javax.swing.*;

public class teste extends JFrame {

public teste(){
	super("Teste");
	JFrame frm = new JFrame("Teste");
	xTextField txt = new xTextField();
	frm.getContentPane().add(txt);
}

public static void main(String args[]){
	new teste().setVisible(true);
}

} [/code]

Quando vou compilar no eclpise, ele não encontra a classe main. Como pode ser ver, tenho uma classe dentro de um apacote (componentes.vizuais). Será por causa disso?

Bem, o q q ta acontecendo que naum encontro a dita main?

Ola,

Clique com o butao direito do mouse e run-> java application…

Tente colocar dentro do main assim:

teste a = new teste(); a.setVisible(true);

falows!

O erro continua. O erro não está na classe main em si, mas na estrutura (creio eu).

Eu tenho um pacote em componentes.visuais, onde eu tenho a classe xTextField (que é extendida de jTextField). depois eu chamo ela. Qunado eu compilo, o erro persiste, ele não encontra a minha classe main…estou quase jogando o pc pela janela…

Bem, como vc’s perceberam, eu estou tentando criar um componente texto extendido de JTextField, e depois chama-lo em um frame. Bem, fiz um outro teste e consegui fazer o eclipse encontrar a classe main, mas quando compilo aparece o seguinte erro.

Exception in thread "main" java.lang.StackOverflowError at java.util.WeakHashMap.expungeStaleEntries(Unknown Source) at java.util.WeakHashMap.getTable(Unknown Source) at java.util.WeakHashMap.get(Unknown Source) at java.util.Collections$SynchronizedMap.get(Unknown Source) at javax.swing.text.StyleContext.getImmutableUniqueSet(Unknown Source) at javax.swing.text.StyleContext.addAttributes(Unknown Source) at javax.swing.text.AbstractDocument$AbstractElement.addAttributes(Unknown Source) at javax.swing.text.AbstractDocument$AbstractElement.<init>(Unknown Source) at javax.swing.text.AbstractDocument$LeafElement.<init>(Unknown Source) at javax.swing.text.AbstractDocument$BidiElement.<init>(Unknown Source) at javax.swing.text.AbstractDocument.<init>(Unknown Source) at javax.swing.text.AbstractDocument.<init>(Unknown Source) at javax.swing.text.PlainDocument.<init>(Unknown Source) at javax.swing.text.PlainDocument.<init>(Unknown Source) at javax.swing.text.DefaultEditorKit.createDefaultDocument(Unknown Source) at javax.swing.plaf.basic.BasicTextUI.installUI(Unknown Source) at javax.swing.plaf.basic.BasicTextFieldUI.installUI(Unknown Source) at javax.swing.JComponent.setUI(Unknown Source) at javax.swing.text.JTextComponent.setUI(Unknown Source) at javax.swing.text.JTextComponent.updateUI(Unknown Source) at javax.swing.text.JTextComponent.<init>(Unknown Source) at javax.swing.JTextField.<init>(Unknown Source) at javax.swing.JTextField.<init>(Unknown Source) at componentes.vizu.Text.<init>(Text.java:7) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) at componentes.vizu.Text.<init>(Text.java:8) . . . at componentes.vizu.Text.<init>(Text.java:8)

O código do pacote onde eu tenho o componente extendido é este.

[code]package componentes.vizu;
import javax.swing.*;

import java.awt.Color;

public class Text extends JTextField{
public Text(){
new Text().setBackground(new Color(204,204,204));
}
}[/code]

e o código onde eu chamo esta classe e onde tem a classe main é este:

[code]import componentes.vizu.Text;
import javax.swing.*;

public class TestePrinc extends JFrame{
public TestePrinc(){
super(“Teste Comp”);
Text t = new Text();
this.getContentPane().add(t);

}
public static void main(String args[]){
	TestePrinc a = new TestePrinc();
	a.setVisible(true);
}

}[/code]

Ola,

Bom, dentro do construtor do Text vc tá o instanciando novamente… isto gera um loop infinito… e tem hora que da falha na pilha de execução…

Tire o new Text do construtor dele… e simplismente set o background…

[quote=“BrunoCarlo”]Ola,

Bom, dentro do construtor do Text vc tá o instanciando novamente… isto gera um loop infinito… e tem hora que da falha na pilha de execução…

Tire o new Text do construtor dele… e simplismente set o background…[/quote]

E num é q é memo.

vlw :grin: