[질문] java 설치 후 설정, 컴파일, 실행
글쓴이: ggan85 / 작성시간: 월, 2004/09/13 - 2:11오후
/etc/profile 설정 이렇게 하고
JAVA_HOME=/usr/java/j2sdk1.4.2_05 PATH=$PATH:$JAVA_HOME/bin CLASSPATH="." export JAVA_HOME PATH C해결방법LASSPATH
ColorRect.java 소스
1 import java.awt.*; 2 import java.util.*; 3 import java.awt.event.*; 4 5 public class ColorRect extends Frame implements Runnable 6 { 7 Label l; 8 int count=0; 9 int x, y, red, blue, green; 10 Random ran = new Random(); 11 Color c; 12 13 public ColorRect() 14 { 15 l = new Label("count"); 16 this.setLayout(new BorderLayout()); 17 add("South",l); 18 addWindowListener(new WinListener()); 19 addMouseListener(new Mouse()); 20 } 21 22 public void run() 23 { 24 for(int i=0;i<5;i++) 25 try{ 26 Thread.sleep(1000); 27 }catch(Exception e){ 28 System.out.println("Thread error"); 29 } 30 repaint(); 31 } 32 33 public void paint(Graphics g) 34 { 35 red = (int)(ran.nextLong() % 255); 36 green = (int)(ran.nextLong() % 255); 37 blue = (int)(ran.nextLong() % 255); 38 39 if(red < 0) 40 red = -red; 41 if(green < 0) 42 green=-green; 43 if(blue < 0) 44 blue = -blue; 45 46 c = new Color(red, green, blue); 47 x = (int)(Math.random() * 100 + 5); 48 y = (int)(Math.random() * 100 + 5); 49 50 if(x < 0) 51 x = -x; 52 if(y < 0) 53 y = -y; 54 55 g.setColor(c); 56 g.drawRect(x, y, 20, 20); 57 } 58 59 public static void main(String args[]) 60 { 61 ColorRect r = new ColorRect(); 62 Thread t1 = new Thread(r); 63 // Thread t2 = new Thread(r); 64 65 r.setSize(300, 300); 66 r.show(); 67 t1.start(); 68 // t2.start(); 69 } 70 71 class WinListener extends WindowAdapter 72 { 73 public void windowClosing(WindowEvent we) 74 { 75 System.exit(0); 76 } 77 } 78 79 class Mouse extends MouseAdapter 80 { 81 public void mouseClicked(MouseEvent e) 82 { 83 int gx = e.getX(); 84 int gy = e.getY(); 85 86 if( (x<gx)&(gx<(x+20))&(y<gy)&(gy<(y+20)) ) 87 { 88 count++; 89 l.setText("count:"+count); 90 } 91 } 92 } 93 }
입니다.. 컴파일은 되는데 실행하면
[root@localhost java]# java ColorRect returned end Exception in thread "main" java.awt.AWTError: Cannot load AWT toolkit: gnu.java.awt.peer.gtk.GtkToolkit at 0x40268e17: java.lang.Throwable.Throwable(java.lang.String) (/usr/lib/./libgcj.so.3) at 0x4025bc8e: java.lang.Error.Error(java.lang.String) (/usr/lib/./libgcj.so.3) at 0x40329582: java.awt.AWTError.AWTError(java.lang.String) (/usr/lib/./libgcj.so.3) at 0x40340c9d: java.awt.Toolkit.getDefaultToolkit() (/usr/lib/./libgcj.so.3) at 0x4034146e: java.awt.Window.getToolkit() (/usr/lib/./libgcj.so.3) at 0x40332068: java.awt.Container.addImpl(java.awt.Component, java.lang.Object, int) (/usr/lib/./libgcj.so.3) at 0x40331ea6: java.awt.Container.add(java.lang.String, java.awt.Component) (/usr/lib/./libgcj.so.3) at 0x403831e7: ffi_call_SYSV (/usr/lib/./libgcj.so.3) at 0x403831a7: ffi_raw_call (/usr/lib/./libgcj.so.3) at 0x402306e8: _Jv_InterpMethod.continue1(_Jv_InterpMethodInvocation) (/usr/lib/./libgcj.so.3) at 0x40230ff4: _Jv_InterpMethod.run(ffi_cif, void, ffi_raw, _Jv_InterpMethodInvocation) (/usr/lib/./libgcj.so.3) at 0x4022e504: _Jv_InterpMethod.run_normal(ffi_cif, void, ffi_raw, void) (/usr/lib/./libgcj.so.3) at 0x4038305c: ?? (??:0) at 0x403831e7: ffi_call_SYSV (/usr/lib/./libgcj.so.3) at 0x403831a7: ffi_raw_call (/usr/lib/./libgcj.so.3) at 0x402306e8: _Jv_InterpMethod.continue1(_Jv_InterpMethodInvocation) (/usr/lib/./libgcj.so.3) at 0x40230ff4: _Jv_InterpMethod.run(ffi_cif, void, ffi_raw, _Jv_InterpMethodInvocation) (/usr/lib/./libgcj.so.3) at 0x4022e504: _Jv_InterpMethod.run_normal(ffi_cif, void, ffi_raw, void) (/usr/lib/./libgcj.so.3) at 0x4038305c: ?? (??:0) at 0x40242dd8: gnu.gcj.runtime.FirstThread.call_main() (/usr/lib/./libgcj.so.3) at 0x402ad02d: gnu.gcj.runtime.FirstThread.run() (/usr/lib/./libgcj.so.3) at 0x4024fc4c: _Jv_ThreadRun(java.lang.Thread) (/usr/lib/./libgcj.so.3) at 0x4021c8ac: _Jv_RunMain(java.lang.Class, byte const, int, byte const, boolean) (/usr/lib/./libgcj.so.3) at 0x08048910: ?? (??:0) at 0x42015574: __libc_start_main (/lib/tls/libc.so.6) at 0x080486c1: ?? (??:0)
이런 에러가 뜹니다.. 설정도 하고 컴파일도 되는데...
에러가 나는 이유와 해결방법좀 알려주세요~
Forums:
지금 사용하시는 자바는 Sun이 아니라 GCJ/Classpath입니다.
지금 사용하시는 자바는 Sun이 아니라 GCJ/Classpath입니다. java -version해보세요. 참고로 CLASSPATH는 쓰지 마세요...
----------------------------
[서명] 그놈 한국 사용자 모임 - 그놈에 대한 모든 것! - 게시판, IRC, 위키, 갤러리 등등...
[code:1]java version "1.3.1"
java -version 하니까 저렇게 나오는데..; gcj로 컴파일하고 실행해야 되는건가요?
아뇨... Sun자바가 실행되어야 하는데 PATH나 JAVA_HOME이
아뇨... Sun자바가 실행되어야 하는데 PATH나 JAVA_HOME이 잘못 잡혀서 gcj/gij로 실행이 되는 것 같습니다. 한번 확인을 해보시고 정 안되면 java를 전체 경로를 다 써서 실행해보세요.
----------------------------
[서명] 그놈 한국 사용자 모임 - 그놈에 대한 모든 것! - 게시판, IRC, 위키, 갤러리 등등...
전체 경로로 하니 돌아갑니다..감사합니다. ^^
전체 경로로 하니 돌아갑니다..
감사합니다. ^^
댓글 달기