2015-05-13 104 views
2

我還算是在Java初學者和我剛開始使用的小應用程序和小程序&東西都工作在一個項目的工作..但我嘗試運行它每一次我得到這個錯誤:無法修復ClassNotFoundException錯誤?

--------------------Configuration: AlexVega - JDK version 1.8.0_20 <Default>  - <Default>-------------------- 
load: class Game.class not found. 
java.lang.ClassNotFoundException: Game.class 
at sun.applet.AppletClassLoader.findClass(AppletClassLoader.java:219) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:424) 
at sun.applet.AppletClassLoader.loadClass(AppletClassLoader.java:152) 
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) 
at sun.applet.AppletClassLoader.loadCode(AppletClassLoader.java:634) 
at sun.applet.AppletPanel.createApplet(AppletPanel.java:799) 
at sun.applet.AppletPanel.runLoader(AppletPanel.java:728) 
at sun.applet.AppletPanel.run(AppletPanel.java:378) 
at java.lang.Thread.run(Thread.java:745) 

Process completed. 

這裏是我的程序:

package com.alexvega; 
import java.applet.*; 
import java.awt.*; 

public class Game extends Applet{ 

private boolean running = false; 
private Thread thread; 

public synchronized void start(){ 
    if(running) 
     return; 

    running = true; 
    thread = new Thread(thread); 
    thread.start(); 
} 

public void run(){ 
    long lastTime = System.nanoTime(); 
double amountOfTicks = 60.0; 
double ns = 1000000000/amountOfTicks; 
double delta = 0; 
long timer = System.currentTimeMillis(); 
int updates = 0; 
int frames = 0; 
while(running){ 
long now = System.nanoTime(); 
delta += (now - lastTime)/ns; 
lastTime = now; 
while(delta >= 1){ 
    int tick; 
    updates++; 
    delta--; 
} 
int render; 
frames++; 

if(System.currentTimeMillis() - timer > 1000){ 
    timer += 1000; 
    System.out.println("FPS: " + frames + " TICKS: " + updates); 
    frames = 0; 
    updates = 0; 
} 
} 
} 

public static void main(String args[]){ 

} 

public void paint(Graphics g){ 
    setBackground(Color.BLACK); 
} 
} 

,這裏是該計劃的第二部分:

package com.alexvega; 

public class Window { 

public Window(Game game){ 
    game.start(); 

} 

} 

什麼我做錯了???

+0

1)爲什麼要編寫一個小程序?如果是由於老師指定它,請將它們轉介給[爲什麼CS教師應該**停止**教Java applets](http://programmers.blogoverflow.com/2013/05/why-cs-teachers-should -stop教學-java的小應用程序/)。 2)爲什麼使用AWT?看到[這個答案](http://stackoverflow.com/questions/6255106/java-gui-listeners-without-awt/6255978#6255978)有很多很好的理由放棄AWT使用組件有利於Swing。 –

+0

HTML是問題的一部分。當它應該有'code ='com.alexvega.Game''時,它顯然在applet屬性中有'code ='Game.class''。它還需要處於相對於代碼庫或代碼庫/ Jar的正確路徑中。 –

回答

0

你的代碼沒有問題。這僅表示您的Java類在運行時無法找到/加載,這是Java開發人員的一個常見問題。從錯誤,它說class Game.class not found這是自我解釋。

您將需要設置您的類路徑以告訴編譯器您的類在哪裏。

查看this link瞭解如何設置類路徑(適用於您的遊戲類)的說明。還有很多網站也提供了相關說明。

快樂編碼。