0

このアプリケーションをjarファイルにエクスポートしようとしていますが、アプリケーションを実行可能なjarファイルとしてエクスポートし、コンソールを使用して起動すると、エラーが発生します(Eclipseから起動したときはそうしませんでした)

これらは私のプロジェクトのファイルです:

ここに画像の説明を入力

これはコンソールのスタックトレースです:

javax.imageio.IIOException: Can't read input file!
        at javax.imageio.ImageIO.read(Unknown Source)
        at john.z.moohrhuhn.MoohuhnGUI.initialize(MoohuhnGUI.java:57)
        at john.z.moohrhuhn.MoohuhnGUI.<init>(MoohuhnGUI.java:40)
        at john.z.moohrhuhn.Main.main(Main.java:31)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoa
der.java:58)
Exception in thread "main" java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoa
der.java:58)
Caused by: java.lang.NullPointerException
        at sun.awt.CustomCursor.<init>(Unknown Source)
        at sun.awt.windows.WCustomCursor.<init>(Unknown Source)
        at sun.awt.windows.WToolkit.createCustomCursor(Unknown Source)
        at john.z.moohrhuhn.MoohuhnGUI.initialize(MoohuhnGUI.java:63)
        at john.z.moohrhuhn.MoohuhnGUI.<init>(MoohuhnGUI.java:40)
        at john.z.moohrhuhn.Main.main(Main.java:31)
        ... 5 more

これは MoohuhnGUI のコードです (48 行目から):

System.out.println("Path: " + getClass().getResource("Cursor.png").toString());
        frame.setBounds(100, 100, 600, 500);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        Toolkit toolkit = Toolkit.getDefaultToolkit();

        BufferedImage img = null;
        try {
            File f = new File(getClass().getResource("Cursor.png").getFile());
            img = ImageIO.read(f);
        } catch (IOException e) {
            System.out.println("problem");
            e.printStackTrace();
        }
        Dimension bestsize = toolkit.getBestCursorSize(300, 300);
        Cursor c = toolkit.createCustomCursor(
                img,
                new Point((int) bestsize.getHeight() / 2, (int) bestsize
                        .getHeight() / 2), "testimg");
        frame.setCursor(c);
        moorhuhn = MoorhuhnFrame.getinstance();
        moorhuhn.init();

        frame.add(moorhuhn);

私はあなたたちが私を助けてくれることをとても嬉しく思います;D

4

1 に答える 1