Seaglass外观和感觉

3

我编写了一个简单的测试类来测试Seaglass外观的特性http://seaglass.googlecode.com/,但是出现了“nimbus类未找到”的异常。

import java.awt.*; 
import javax.swing.*; 


 public class asd {

    private static void createWindow() throws ClassNotFoundException, InstantiationException, IllegalAccessException, UnsupportedLookAndFeelException {

       //Create and set up the window. 
       JFrame frame = new JFrame("Simple GUI");
       frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

       JLabel textLabel = new JLabel("I'm a label in the window",SwingConstants.CENTER); 
       textLabel.setPreferredSize(new Dimension(300, 100)); 
       frame.getContentPane().add(textLabel, BorderLayout.CENTER); 

       //Display the window. 
       frame.setLocationRelativeTo(null); 
       frame.pack();
       frame.setVisible(true);
               }

    public static void main(String[] args) {
             try {
                UIManager.setLookAndFeel("com.seaglasslookandfeel.SeaGlassLookAndFeel");
                createWindow();
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (InstantiationException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IllegalAccessException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (UnsupportedLookAndFeelException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }



    }
 } 

异常

Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/java/swing/plaf/nimbus/NimbusLookAndFeel
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at javax.swing.SwingUtilities.loadSystemClass(Unknown Source)
at javax.swing.UIManager.setLookAndFeel(Unknown Source)
at asd.main(asd.java:31)

1
看起来你正在使用Java 1.5(或更早版本)。Nimbus需要1.6及以上的版本。 - Bart Kiers
2
尝试删除您的UIManager代码,然后使用“-Dswing.defaultlaf=com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel”选项启动代码。这将让您知道NimbusLAF是否已安装在您的系统上。 - Codemwnci
1
@ramya,如果您正在使用一个集成开发环境(可能有自己的编译器!),它是否也设置为Java版本1.6? - Bart Kiers
@ramya: "出现了“nimbus类未找到”的异常。" NoClassDefFoundError 继承自 Error,而不是 Exception - Andrew Thompson
http://download.oracle.com/javase/6/docs/technotes/guides/jweb/otherFeatures/nimbus_laf.html - mKorbel
显示剩余2条评论
1个回答

5

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接