여기서는 이클립스없이 콘솔에서 swt를 사용하기 위한 방법을 간단히 적는다.
난 콘솔이 편하므로…
1. jdk 를 설치한다.
2. swt를 다운받은후 swt.jar 압축을 lib 폴더에 푼다. (우리가 작성할 소스코드와 외부 라이브러리를 분리하기 위함)
필요하면 다른 라이브러리도 이곳에 압축을 푼다.
환경변수를 등록해서 하는 경우
환경변수 CLASSPATH를 다음과 같이 수정한다.
.;.\lib
다음 컴파알한후 실행
javac Hello.java
java Hello
옵션으로 직접 적어주는 경우
javac -classpath ".\lib" Hello.java
java -classpath ".;.\lib" -Djava.library.path=".\lib" Hello
아래는 SWT Ribbon 예제를 실행한 화면.

import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.MenuItem;
import com.hexapixel.widgets.generic.ImageCache;
import com.hexapixel.widgets.ribbon.RibbonButton;
import com.hexapixel.widgets.ribbon.RibbonButtonGroup;
import com.hexapixel.widgets.ribbon.RibbonCheckbox;
import com.hexapixel.widgets.ribbon.RibbonGroup;
import com.hexapixel.widgets.ribbon.RibbonShell;
import com.hexapixel.widgets.ribbon.RibbonTab;
import com.hexapixel.widgets.ribbon.RibbonTabFolder;
import com.hexapixel.widgets.ribbon.RibbonTooltip;
public class Hello {
public static void main(String[] args)
{
Display display = new Display();
final RibbonShell shell = new RibbonShell(display);
shell.setText("SWT Ribbon Demo");
RibbonTabFolder folder = shell.getRibbonTabFolder();
RibbonTab tab1 = new RibbonTab(folder, "snakedj.ch - swiss java blog");
RibbonTab tab2 = new RibbonTab(folder, "jugr.ch - Java User Group Graubunden");
folder.pack();
RibbonTooltip toolTip = new RibbonTooltip("RibbonTooltip", "This is a RibbonTooltip content text.\n\nhttp://www.snakedj.ch - \\c255000000swiss java blog \\x\nhttp://www.jugr.ch - \\c255000000Java User Group Graubunden \\x", ImageCache.getImage("tooltip.jpg"), ImageCache.getImage("questionmark.gif"), "Press F1 for more help");
RibbonGroup group1 = new RibbonGroup(tab1, "Java", toolTip);
new RibbonButton(group1, ImageCache.getImage("olb_picture4.gif"), "J2SE",RibbonButton.STYLE_ARROW_DOWN);
new RibbonButton(group1, ImageCache.getImage("olb_picture5.gif"), "J2EE",RibbonButton.STYLE_ARROW_DOWN);
new RibbonButton(group1, ImageCache.getImage("olb_picture6.gif"), "J2ME",RibbonButton.STYLE_ARROW_DOWN);
RibbonGroup group2 = new RibbonGroup(tab1, "Miscellaneous", toolTip);
RibbonButtonGroup buttonGroup = new RibbonButtonGroup(group2);
new RibbonCheckbox(buttonGroup, "C++", SWT.NONE);
new RibbonCheckbox(buttonGroup, "PHP", SWT.NONE);
new RibbonCheckbox(buttonGroup, "PL / SQL", SWT.NONE);
new RibbonCheckbox(buttonGroup, "Scala", SWT.NONE);
Menu bigButtonMenu = shell.getBigButtonMenu();
MenuItem menuItem1 = new MenuItem(bigButtonMenu, SWT.POP_UP);
menuItem1.setText("Item1");
MenuItem menuItem2 = new MenuItem(bigButtonMenu, SWT.POP_UP);
menuItem2.setText("Item2");
shell.addBigButtonListener(new SelectionListener() {
@Override
public void widgetDefaultSelected(SelectionEvent e) {
}
@Override
public void widgetSelected(SelectionEvent e) {
shell.showBigButtonMenu();
}
});
shell.open ();
while (!shell.isDisposed ()) {
if (!display.readAndDispatch ()) display.sleep ();
}
display.dispose ();
}
}