Elabore um programa em JAVA que leia 5 valores inteiros e apresente na tela todos os números lidos e o maior número e o menor número entre eles

Por enquanto está assim. mas está dando erro, já li e reli não achei ainda o erro. Conseguem me dizer onde está o mesmo ?

package atividade6.1;

import javax.swing.JOptionPane;

public class Atividade6.1 {
    public static void main(String[] args) {
  
        int n1,n2,n3,n4,n5,maior,menor;
        
        n1 = Integer.parseInt (JOptionPane.showInputDialog (""
        + "Digite o numero inteiro n1"));
        
        maior = n1;
        menor = n1;
        
        n2 = Integer.parseInt (JOptionPane.showInputDialog (""
        + "Digite o numero inteiro n1"));
        
        if ( n2 < menor){
            menor = n2;
        }
        
        if ( n2 > maior){
            maior = n2;
        }
        
        n3 = Integer.parseInt (JOptionPane.showInputDialog (""
        + "Digite o numero inteiro n1"));
        
        if (n3 < menor){
            menor = n3;
        }
        
        if (n3 > maior){
            maior = n3;
        }
        
        n4 = Integer.parseInt (JOptionPane.showInputDialog (""
        + "Digite o numero inteiro n1"));
        
        if (n4 < menor){
            menor = n4;
        }
       
        if (n4 > maior){
            maior = n4;
        }
        
       n5 = Integer.parseInt (JOptionPane.showInputDialog (""
        + "Digite o numero inteiro n1"));
       
       if (n5 < menor){
           menor = n5;
       }
       
       if (n5 > maior){
           maior = n5;
       }
       
      JOptionPane.showMessageDialog (null, "Os valores inteiros digitados"
      +" são: MAIOR->"+ maior+ ", e MENOR->"+menor);
    }
}

Qual erro exatamente está dando?

Você tem bastante código repetido, daria para reduzir com o uso de um for.

Eu executei aqui e não deu erro. Qual erro que está dando aí?
Outra coisa, você já chegou parte de vetores?