método debe llamar al error super () en Netbeans

Recientemente hice un proyecto de Netbeans y estoy usando SVN junto con él. Estoy viendo un error de clase duplicado, y en la consola dice

java.lang.VerifyError: (class: pie/chart/explorer/PieChartExplorer, method: signature: ()V) Constructor must call super() or this()
Could not find the main class: pie.chart.explorer.PieChartExplorer. Program will exit.
Exception in thread "main" Java Result: 1

Aquí está PieChartExplorer.java:

 package pie.chart.explorer; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*; public class PieChartExplorer extends JFrame implements ActionListener { JTextField one = new JTextField(10); JTextField two = new JTextField(10); JTextField three = new JTextField(10); JButton sub = new JButton("Click to be amazed"); public PieChartExplorer() { super("Pie Chart Explorer"); setSize(300,100); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); FlowLayout flo = new FlowLayout(); setLayout(flo); setVisible(true); add(one); add(two); add(three); sub.addActionListener(this);; add(sub); } public static void main(String[] args) { PieChartExplorer app = new PieChartExplorer(); } @Override public void actionPerformed(ActionEvent e) { Object source = e.getSource(); if(source == sub) { try { Pie show = new Pie(Float.parseFloat(one.getText()),Float.parseFloat(two.getText()),Float.parseFloat(three.getText())); } catch(Exception ex) { JOptionPane.showMessageDialog(this, "Please check entered data"); } } } } 

Yo he tratado:

  1. Limpiar y reconstruir el proyecto
  2. Asegurándome de haber llamado super en todos los constructores

¿Cómo se puede arreglar esto? Código para descargar .

Vi estos síntomas el otro día.

Hice un archivo que había estado editando y decidí que quería dividir mis cambios en 2 commits. Fui al directorio que contenía mi archivo “x / y / Z.java”, hice un directorio en “x / y” llamado “copia de seguridad”, moví “Z.java” allí y saqué una nueva copia del control de versión. Tenga en cuenta que todo esto se hizo fuera del IDE.

De vuelta en el IDE, me fusioné con los cambios para el primer commit y cuando lo construí recibí el mensaje de clase duplicado para “Z.java”.

Cuando copié la fuente en “copia de seguridad”, lo hice fuera del IDE y todavía tenía el paquete original “xy”, como hizo mi “Z.java” recién editado. NB no comstackría el nuevo “Z.java” porque podría ver que ya había creado “xyZclass” (de “x / y / backup / Z.java”).

Hay 2 formas de solucionar esto:

  1. Cambie el nombre de “x / y / backup / Z.java” a “x / y / backup / Z.java.backup”. (Impedir que se compile la copia de seguridad).
  2. Cambia el paquete en “x / y / backup / Z.java” de “xy” a “xybackup”. (Haga que la copia de seguridad cree un archivo de clase diferente).

Después de realizar cualquiera de estos cambios, realice una “limpieza y comstackción”. Nota: simplemente la construcción no solucionará el problema, debe realizar una limpieza para eliminar el archivo de clase deshonesto.

Nota: # 1 se realizó al renombrar Z.java desde la línea de comando, no dentro de NB. NB no te permitirá cambiar la extensión del archivo.

Descubrí que el cambio de nombre del paquete no funcionaba, el paquete anterior todavía estaba allí.

El problema para mí comenzó cuando copié un paquete de otra aplicación en la aplicación actual, que ya tenía un paquete con el mismo nombre. Estaba intentando agregar algunas clases faltantes al paquete. Después de que hice eso, el error comenzó.

Para resolverlo, eliminé todo el paquete de la aplicación web de destino e hice una limpieza y comstackción. Luego copié el paquete de origen en la aplicación de destino. Sin errores.

La limpieza y la construcción resuelven el problema

Si todavía tienes el problema, así es como lo resolví …

En mi caso, cambié la clase con el método principal más adelante y la clase inicial todavía se referenciaba en el archivo de proporciones.

Cambie esa configuración, limpie y construya … Funcionó para mí …

En mi caso, tuve el mismo problema en una aplicación web después de hacer una copia externa de un POJO y editarlo manualmente fuera de NETBEANS. El problema en realidad fue lo que otros sugirieron en otras respuestas sobre un conflicto en los archivos .class ya comstackdos.

Lo que hice para superar esto fue simplemente eliminar la carpeta webAppname/WEB-INF/classes (donde residen las clases comstackdas) y luego hacer un Clean and Build

Espero que esto ayude a alguien