Я новичок в программировании с помощью апплетов и хотел сделать апплет для размещения на веб-сайте. Итак, идем.java applet ExceptionInInitializerError
Целью этого проекта было то, что если вы нажмете кнопку, он откроет JFrame поверх браузера. но при тестировании он дает мне java.lang.ExceptionInInitializerError
. Это исходный код:
public class LaunchMenu extends Applet {
public static LoginScreen login;
public static Game game;
public JButton button;
public void init() {
try {button= new JButton("Press this button to start");
add(button);
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
login = new LoginScreen();
}
});
} catch (Exception e) {
e.getMessage();
e.getCause();
}
}
public void start() {
login = new LoginScreen();
}
public void stop() {
login.dispose();
game.stop();
}
public static void main(String[] args) {
}
}
Примечание: Это работает в Eclipse, с его окно апплета, но не на сайте.
редактировать:
Exception in thread "AWT-EventQueue-2" java.lang.IllegalStateException: Applet's parent container not set up
at sun.plugin2.applet.Plugin2Manager.start(Unknown Source)
at sun.plugin2.main.client.PluginMain$StartAppletRunner.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
CacheEntry[http://localhost/AppletTest/Applet.jar]: updateAvailable=true,lastModified=Mon Apr 13 12:24:52 CEST 2015,length=5051938
Трассировка стека была бы полезна? – Oli
1) Зачем нужен апплет? Если это связано с тем, что учитель указал на это, обратитесь к [Почему учителя CS должны ** останавливаться ** преподавать Java-апплеты] (http://programmers.blogoverflow.com/2013/05/why-cs-teachers-should -stop-учебно-ява-апплеты /). 2) Зачем использовать AWT? См. [Этот ответ] (http://stackoverflow.com/questions/6255106/java-gui-listeners-without-awt/6255978#6255978) по многим причинам, чтобы отказаться от использования AWT с использованием компонентов в пользу Swing. –
@AndrewThompson ответить на ваш первый вопрос; причина, по которой я использую апплет, - это то, что я работаю над проектом с кем-то. Он делает сайт, и я делаю связанную с Java вещь. И, чтобы разместить его в Интернете, я использую апплет. (Единственное, что я знаю, чтобы положить его в Интернет) :) И для вашего второго вопроса: не поймите меня неправильно, я использую качели в сочетании с AWT. Swing для всех визуальных частей и awt для ActionListeners & ItemsListeners;), поскольку это невозможно сделать. _ _ – Deadrow