package com.cn.hollo;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
import java.lang.Object;
public class HelloWorld {
private static Text text;
/**
* Launch the application
* @param args
*/
public static void main(String[] args) {
final Display display = Display.getDefault();
final Shell shell = new Shell();
shell.setSize(500, 375);
shell.setText( "SWT应用程序窗口 ");
//
shell.open();
text = new Text(shell, SWT.BORDER);
text.addMouseListener(new MyMouseDoubleClick());
text.setText( "Hello World ");
text.setBounds(107, 48, 80, 25);
private static final class MyMouseDoubleClick extends MouseAdapter{
public void mouseDoubleClick(MouseEvent e){
MessageDialog.openinformation(null, " ", "Hello World ")
}
}
shell.layout();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}
}
错误提示:java.lang.NoClassDefFoundError: com/cn/hollo/HelloWorld
Exception in thread "main "
可是明明有main 类的。
------解决方案--------------------
路径没找对。
把你的源文件存储在比如d:\java目录下的com\cn\hello目录下,文件名为HelloWorld,后缀名为.java
然后在cmd方式下进入d:\java目录运行:
javac com\cn\hello\HelloWorld.java
然后运行在d:\java目录下运行:
java com.cn.hello.HelloWorld
上面所有叙述都是基于你的jdk环境变量配置正确的基础上。
------解决方案--------------------
我看了你你的程序
出现java.lang.NoClassDefFoundError: com/cn/hollo/HelloWorld
Exception in thread "main "
最可能的源因是:ClassPath路径错了。你看看
正确的是:
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
.;不能少,%JAVA_HOME%也是JDK的路径
不知道你是用什么运行的,如果是命令行的话 java HelloWorld.class也会出这个错,去掉class就好了。
------解决方案--------------------
还有就是把swt-win32-3063.dll拷到你的project根目录下
楼上的楼上正解!
如果你没有把swt-win32-3-63.dll那个文件拷到你的工程目录下的话,你可以试一下在执行这个程序的时候选择swt application
前提是你是在eclipse里面执行你的程序。