Código não compilando

Boa noite.

Eu estou tentando aprender Java, e estou tentando dificuldades em algumas coisas.
Tentei fazer um código para entender métodos, mas ele esta retornando 2 erros.

package br.com.poo;

public class Raiz {

	int primo = 1;
	int res = 2;
	int raiz = 0;
	int cont = 0;
	int resultado = 0;
	
	
	while(resultado > res) {
		res = primo + 2;
		resultado = res - raiz;
		cont = cont + 1;			
	}
	} 

package br.com.poo;

import javax.swing.JOptionPane;

public class RaizTest {

	public static void main(String[] args) {
		
		Raiz r = new Raiz();
					
		int entrada = Integer.parseInt(JOptionPane.showInputDialog("Entre com a raiz")) ;
		System.out.println(entrada);
					
	}
}

Quando mando compilar retorna o seguinte erro:

Exception in thread “main” java.lang.Error: Unresolved compilation problem:
Syntax error on token “;”, { expected after this token

at br.com.poo.Raiz.<init>(Raiz.java:11)
at br.com.poo.RaizTest.main(RaizTest.java:9)

Com certeza é algo bobo, mas alguém poderia me ajudar?

Obrigado.

Olá fabricioje , isso ocorre porque em Java, você deve criar métodos para executar seu programa, Java é fortemente orientado a objetos, não é linguagem procedural.

Faça assim

[code]int retornaNumeroRaiz(int raiz) {
while(resultado > res) {
res = primo + 2;
resultado = res - raiz;
cont = cont + 1;
}

return resultado;
}[/code]

E depois invoque o método:

System.out.println(retornaNumeroRaiz(entrada));

Use a tag code para deixar seu código mais fácil de ler.