Я создаю приложение, которое конвертирует между имперскими единицами, поэтому мне не нужно запоминать глупые числа.Это следующий код:
import java.util.Scanner;
import org.gnome.Gtk;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("Launch GUI? [Y/n]: ");
if(in.next().contains("y") {
startGtk(args);
}
// Calculator in terminal, unrelated.
}
private static void startGtk(String[] args) {
Gtk.init(args);
new GtkUI(); // External class, extends org.gnome.gtk.Window. Is the UI.
Gtk.main();
System.exit(0); // I don't want the terminal calculator to start after the GTK Calculator.
}
}
Я провел некоторое тестирование и обнаружил, что проблема не в GtkUI
, а в Gtk.init(String[])
, потому что я пытался комментировать new GtkUI()
и Gtk.main()
и проблема все еще возникает.Единственный «null
» в любом из моих файлов находится в функции, которая, опять же, не связана с этой проблемой, так как приложение остановится перед вызовом.Работал раньше.Вот вывод консоли:
Exception in thread "main" java.lang.ExceptionInInitializerError
at org.gnome.gtk.Gtk.init(Gtk.java:95)
at com.imstupid.something.Main.launchGTK(Main.java:54)
at com.imstupid.something.Main.main(Main.java:9)
Caused by: java.lang.NullPointerException
at org.freedesktop.bindings.Plumbing.loadNativeCode(Plumbing.java:192)
at org.freedesktop.bindings.Plumbing.<clinit>(Plumbing.java:110)
... 3 more