<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 119  文章 - 3173  trackbacks - 0
    <2007年8月>
    2930311234
    567891011
    12131415161718
    19202122232425
    2627282930311
    2345678

    交友莫獨(dú)酒,茅臺(tái)西鳳游。
    口干古井貢,心徜洋河流。
    稱多情杜康,趟無(wú)量雙溝。
    贊中華巍巍,無(wú)此不銷愁。

    常用鏈接

    留言簿(68)

    隨筆分類(136)

    隨筆檔案(122)

    最新隨筆

    搜索

    •  

    積分與排名

    • 積分 - 527168
    • 排名 - 93

    最新評(píng)論

    很多剛搞SWT的朋友都會(huì)遇到這樣一個(gè)問(wèn)題:
    寫的SWT在eclipse中可以運(yùn)行,但是用命令行去執(zhí)行就會(huì)報(bào)錯(cuò)。
    今天就和大家一起徹底解決這個(gè)問(wèn)題。

    比如我們先寫一個(gè)這樣的小程序:

     1 import org.eclipse.swt.SWT;
     2 import org.eclipse.swt.widgets.Display;
     3 import org.eclipse.swt.widgets.Shell;
     4 
     5 
     6 public class BasicSwt extends Shell {
     7 
     8     /**
     9      * Launch the application
    10      * @param args
    11      */
    12     public static void main(String args[]) {
    13         try {
    14             Display display = Display.getDefault();
    15             BasicSwt shell = new BasicSwt(display, SWT.SHELL_TRIM);
    16             shell.open();
    17             shell.layout();
    18             while (!shell.isDisposed()) {
    19                 if (!display.readAndDispatch())
    20                     display.sleep();
    21             }
    22         } catch (Exception e) {
    23             e.printStackTrace();
    24         }
    25     }
    26 
    27     /**
    28      * Create the shell
    29      * @param display
    30      * @param style
    31      */
    32     public BasicSwt(Display display, int style) {
    33         super(display, style);
    34         createContents();
    35     }
    36 
    37     /**
    38      * Create contents of the window
    39      */
    40     protected void createContents() {
    41         setText("SWT Application");
    42         setSize(500375);
    43         //
    44     }
    45 
    46     @Override
    47     protected void checkSubclass() {
    48         // Disable the check that prevents subclassing of SWT components
    49     }
    50 
    51 }
    52 


    在eclipse中運(yùn)行,ok,可以看到一個(gè)空白窗體。

    運(yùn)行CMD,到項(xiàng)目目錄,運(yùn)行java BasicSwt,結(jié)果報(bào)錯(cuò)了:
    Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/swt/widgets/Shell
            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)

    為什么?
    因?yàn)槲覀內(nèi)鄙龠\(yùn)行SWT需要的類庫(kù)和相關(guān)DLL鏈接庫(kù)
    首先我們先下載一個(gè)文件:
    http://download.eclipse.org/eclipse/downloads/drops/R-3.2.2-200702121330/
    下載swt-3.2.2-win32-win32-x86.zip
    解壓縮,主要到里面的兩個(gè)文件:
    swt.jar
    swt-win32-3236.dll

    本例中,我們先把這兩個(gè)文件放到H:\

    然后把我們執(zhí)行:java -classpath h:\swt.jar BasicSwt
    這時(shí)候可以看到出錯(cuò)信息變了Exception in thread "main" java.lang.NoClassDefFoundError: BasicSwt

    ok,再改,執(zhí)行:java -classpath h:\swt.jar; -Djava.library.path=h:\ BasicSwt

    ok,正常啦。。。。。。。。。。。。。。。。。。。。。

    稍微解釋下-Djava.library.path=h:\
    這里指定的是swt-win32-3236.dll存放的路徑

    posted on 2007-04-19 10:07 交口稱贊 閱讀(3410) 評(píng)論(4)  編輯  收藏 所屬分類: Eclipse RCP SWT

    FeedBack:
    # re: 徹底解決SWT運(yùn)行出錯(cuò)(1)命令行方式 2007-08-18 17:10 MilC
    真的讓人感謝得痛哭流涕啊  在此謝過(guò)  回復(fù)  更多評(píng)論
      
    # re: 徹底解決SWT運(yùn)行出錯(cuò)(1)命令行方式 2007-08-18 21:44 交口稱贊
    不客氣,有用就好  回復(fù)  更多評(píng)論
      
    # re: 徹底解決SWT運(yùn)行出錯(cuò)(1)命令行方式 2010-01-04 13:51 alanling
    為什么我還是不行,完全一樣的操作  回復(fù)  更多評(píng)論
      
    # 感謝 2011-05-21 10:27 java_me
    謝謝謝謝謝,糾結(jié)了好幾天的問(wèn)題在你清晰的說(shuō)明下終于解決了。原來(lái)之前少了一個(gè)分號(hào)。  回復(fù)  更多評(píng)論
      
    主站蜘蛛池模板: 亚洲国产视频一区| 久久精品a一国产成人免费网站| 最近中文字幕mv手机免费高清 | 久久精品亚洲日本波多野结衣| 久久精品免费电影| 亚洲av女电影网| 亚洲专区中文字幕| 在线观看免费人成视频色9| 国产一区二区三区在线观看免费| 亚洲中文字幕一区精品自拍| 成人免费看片又大又黄| 爱爱帝国亚洲一区二区三区| 国产大片91精品免费看3| 亚洲男人天堂av| 99在线精品免费视频九九视| 亚洲国产精品成人| 亚洲精品视频免费 | a级毛片免费高清视频| 亚洲午夜爱爱香蕉片| 99久久99这里只有免费的精品| 99精品全国免费观看视频| 亚洲日韩AV一区二区三区四区 | 免费久久人人爽人人爽av| 成人毛片18女人毛片免费| 亚洲AⅤ男人的天堂在线观看| 三年片在线观看免费观看大全动漫| 99在线免费观看| 久久久久亚洲av无码专区 | 人妻18毛片a级毛片免费看| 无人影院手机版在线观看免费 | 亚洲日日做天天做日日谢| 精品国产免费人成网站| 久久精品亚洲综合专区| www成人免费观看网站| 亚洲伦另类中文字幕| 免费观看美女裸体网站| 亚洲a级在线观看| 亚洲精品第一国产综合精品99| 久久国产乱子伦精品免费看| 美女视频黄免费亚洲| 91麻豆精品国产自产在线观看亚洲 |