자바의 간단한 프로그램(젠투의 Eclipse에서)
자바에서 Awt를 이용한 간단한 프로그램을 책을 보고 입력했는데,
import java.awt.*;
import java.awt.event.*;
public class FrameEx1 extends Frame {
public FrameEx1(String name) {
super(name);
}
public void showFrame() {
setSize(300,300);
setLocation(100,200);
setBackground(Color.yellow);
setVisible(true);
//종료 버튼을 누르면 종료하게 만들기(없어도 실행가능) ----
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent w) {
System.exit(0);
}
});
}
public static void main(String[] args) {
FrameEx1 ex1 = new FrameEx1("Frame을 보여주기");
ex1.showFrame();
}
}
아래와 같이 에러가 발생합니다.
Exception in thread "main" java.lang.NoClassDefFoundError: newwindow1
간단한 문제인 것 같은데, 책 내용과 똑같이 입력했습니다. 혹시 책의 문법과 제가 쓰는 자바의 문법이 다른가요?
참고로 제가 쓰는 eclipse-sdk : 3.0.1
blackdown-jdk-1.4.2.01입니다.
newwindow1.java -> FrameEx1.java혹
newwindow1.java -> FrameEx1.java
혹은
public class FrameEx1 extends Frame {
->
public class newwindow1 extends Frame {
이리 하셔야 하지 않나 싶습니다. 미천한 자바 지식인지라 아닐지도;;
(파일명과 "그" 클래스-용어 모릅니다-의 이름은 같아야 합니다)
[해결되었습니다.]
윗 글을 읽고 곰곰히 살펴보니.
제가 eclips의 사용법을 잘 몰라서 그런 문제가 생긴 거 같습니다.
윗분의 말대로 class이름과 파일이름이 같게 만들었는데,
eclipse에서는 Run실행시 configuration을 바꾸지 않아서
이전에 짰던 newwindow1의 configuration(여기에 newwindow1이란 클래스가 있음)이 실행되었습니다.
새로운 Run-configuration을 쓰니 잘되는 군요....
문제를 해결할 수 있어서 감사합니다.
Have a nice day!
댓글 달기