And*_*llo 11 java charts swing netbeans superclass
最近我做了一个Netbeans项目,我正在使用SVN.我看到重复的类错误,并在控制台中说
java.lang.VerifyError: (class: pie/chart/explorer/PieChartExplorer, method: <init> 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
这是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");
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我试过了:
怎么解决这个问题?代码下载.
dow*_*eyt 12
我发现重命名包不起作用,旧的包仍然存在.
当我将一个包从另一个应用程序复制到当前应用程序(已经有一个具有相同名称的包)时,问题开始了.我试图在包中添加一些缺少的类.我这样做后,错误开始了.
为了解决这个问题,我从目标Web应用程序中删除了整个包,并进行了清理和构建.然后我将源包复制到目标应用程序中.没有错误.
Dev*_*ler 11
我前几天才看到这些症状.
我有我编辑的文件,我决定将我的更改分成2个提交.我去了包含我的文件"x/y/Z.java"的目录,在"x/y"中创建了一个名为"backup"的目录,在那里移动了"Z.java",并从版本控制中提取了一个新的副本.请注意,所有这些都是在IDE之外完成的.
回到IDE中我合并了第一次提交的更改,当我构建时,我得到了"Z.java"的重复类消息.
当我将源复制到"备份"时,我在IDE之外完成了它,它仍然有原始包"xy",就像我新编辑的"Z.java"一样.NB不会编译新的"Z.java",因为它可以看到它已经创建了"xyZclass"(来自"x/y/backup/Z.java").
有两种方法可以解决这个问题:
完成其中任何一项更改后,执行"清理并构建".注意:简单构建不会解决问题,需要执行clean来删除流氓类文件.
注意:#1是通过从命令行重命名Z.java完成的,而不是在NB中.NB不会让您更改文件扩展名.