- 浏览: 1123358 次
- 性别:
- 来自: 火星郊区
博客专栏
-
OSGi
浏览量:0
文章分类
- 全部博客 (695)
- 项目管理 (48)
- OSGi (122)
- java (79)
- Vaadin (5)
- RAP (47)
- mysql (40)
- Maven (22)
- SVN (8)
- 孔雀鱼 (10)
- hibernate (9)
- spring (10)
- css (3)
- 年审 (6)
- ant (1)
- jdbc (3)
- FusionCharts (2)
- struts (4)
- 决策分析 (2)
- 生活 (10)
- 架构设计 (5)
- 破解 (2)
- 狼文化 (4)
- JVM (14)
- J2EE (1)
- 应用服务器 (1)
- 我的链接 (5)
- 数学 (2)
- 报表 (1)
- 百科 (6)
- Flex (7)
- log4j (2)
- PHP (1)
- 系统 (2)
- Web前端 (7)
- linux (6)
- Office (1)
- 安全管理 (5)
- python (2)
- dom4j (1)
- 工作流 (3)
- 养生保健 (4)
- Eclipse (8)
- 监控开发 (1)
- 设计 (3)
- CAS (1)
- ZK (41)
- BluePrint (3)
- 工具 (1)
- SWT (7)
- google (2)
- NIO (1)
- 企业文化 (2)
- Windoes (0)
- RCP (7)
- JavaScript (10)
- UML (1)
- 产品经理 (2)
- Velocity (10)
- C (1)
- 单元测试 (1)
- 设计模式 (2)
- 系统分析师 (2)
- 架构 (4)
- 面试 (2)
- 代码走查 (1)
- MongoDB (1)
- 企业流程优化 (1)
- 模式 (1)
- EJB (1)
- Jetty (1)
- Git (13)
- IPV6 (1)
- JQuery (8)
- SSH (1)
- mybatis (10)
- SiteMesh (2)
- JSTL (1)
- veloctiy (1)
- Spring MVC (1)
- struts2 (3)
- Servlet (1)
- 权限管理 (1)
- Java Mina (1)
- java 系统信息 (6)
- OSGi 基础 (3)
- html (1)
- spring--security (6)
- HTML5 (1)
- java爬虫搜索 (1)
- mvc (3)
最新评论
-
Tom.X:
http://osgia.com/
将web容器置于OSGi框架下进行web应用的开发 -
chenyuguxing:
你好, 为什么我的bundle export到felix工程中 ...
在Apache Felix中运行bundle -
string2020:
<niceManifest>tru ...
Bundle Plugin for Maven -
jsonmong:
OSGI,是未来的主流,目前已相当成熟。应用OSGI比较好的, ...
基于OSGi的声明式服务 -
zyhui98:
貌似是翻译过来的,有很少人在linux上做开发吧
如何成为“10倍效率”开发者
很多刚搞SWT的朋友都会遇到这样一个问题:
写的SWT在eclipse中可以运行,但是用命令行去执行就会报错。
今天就和大家一起彻底解决这个问题。
比如我们先写一个这样的小程序:
import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; public class BasicSwt extends Shell { /** * Launch the application * @param args */ public static void main(String args[]) { try { Display display = Display.getDefault(); BasicSwt shell = new BasicSwt(display, SWT.SHELL_TRIM); shell.open(); shell.layout(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } } catch (Exception e) { e.printStackTrace(); } } /** * Create the shell * @param display * @param style */ public BasicSwt(Display display, int style) { super(display, style); createContents(); } /** * Create contents of the window */ protected void createContents() { setText("SWT Application"); setSize(500, 375); // } @Override protected void checkSubclass() { // Disable the check that prevents subclassing of SWT components } }
在eclipse中运行,ok,可以看到一个空白窗体。
运行CMD,到项目目录,运行java BasicSwt,结果报错了:
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)
为什么?
因为我们缺少运行SWT需要的类库和相关DLL链接库
首先我们先下载一个文件:
到http://download.eclipse.org/eclipse/downloads/drops/R-3.2.2-200702121330/
下载swt-3.2.2-win32-win32-x86.zip
解压缩,主要到里面的两个文件:
swt.jar
swt-win32-3236.dll
本例中,我们先把这两个文件放到H:\
然后把我们执行:java -classpath h:\swt.jar BasicSwt
这时候可以看到出错信息变了Exception in thread "main" java.lang.NoClassDefFoundError: BasicSwt
ok,再改,执行:java -classpath h:\swt.jar; -Djava.library.path=h:\ BasicSwt
ok,正常啦
稍微解释下-Djava.library.path=h:\
这里指定的是swt-win32-3236.dll存放的路径
上面的介绍比较适合程序发布和给客户使用的时候,那么我们自己开发的时候老是这么用也不方便,
下面我们彻底解决这个问题:
把
swt-awt-win32-3236.dll
swt-gdip-win32-3236.dll
swt-wgl-win32-3236.dll
swt-win32-3236.dll
全部拷贝到\Windows\System32下面
修改系统环境变量:
classpath=.;d:\JAVA6\lib\tools.jar;d:\JAVA6\lib\dt.jar;d:\JAVA6\bin;h:\swt.jar;
解释一下:
“.”是指当前目录
“d:\JAVA6\lib\tools.jar;d:\JAVA6\lib\dt.jar;d:\JAVA6\bin;”是为了JAVA6配置的
“h:\swt.jar;”是咱们SWT.JAR的路径
关掉CMD,重新打开,不然CMD不会重新加载环境变量。
到项目目录,运行java BasicSwt
ok,正常运行了,不用那么长的命令行了
发表评论
-
一个例子全部说明java泛型中的K,V,T,E,?,object的意思及其用法
2013-03-07 11:09 69991.意思 jdk中的K,V,T,E等泛型名称很多人以为 ... -
Log4j 把不同包的日志打印到不同位置
2012-11-29 08:23 1118需要的包和测试的代码下载附件! 如果需要将不同的日 ... -
Java多线程发展简史
2012-09-16 14:25 1005转自:http://www.raychase.ne ... -
Java编码易疏忽的十个问题
2012-09-06 08:52 881在Java编码中,我们容易 ... -
网络编程
2012-09-04 13:30 933计算机网络基础 什么是计算机网络 把分布在 ... -
获取Java程序运行的路径 | 获取当前jar包的路径
2012-09-04 11:55 14024经过试验,不管是否是 Jar 包,不管是否是 Tom ... -
java的concurrent用法详解
2012-08-03 11:28 974我们都知道,在JDK1.5之前,Java中要进行业务并发时 ... -
Java程序员必知的8大排序
2012-07-05 09:56 9988 种排序之间的关系: ... -
Comparator与Comparable的区别
2012-07-05 08:38 1184当需要排序的集合或数组不是单纯的数字类型的时候,通常可以使用C ... -
RSA算法Java实现
2012-06-27 08:22 1380Java代码 package c ... -
队列阻塞浅析
2012-06-17 18:10 897这几天所做的项目中涉及到了队列阻塞机制,通过研究整理如下 ... -
Java面试过程中会遇到的问题
2012-06-13 13:04 10871、abstract的method是否可同时是static,是 ... -
【解惑】深入jar包:从jar包中读取资源文件
2012-06-13 13:02 1067我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等)。 ... -
java 处理文件路径中的空格
2012-06-13 12:57 1496问题背景: windows下有个目录名称Program ... -
java内存分配机制
2012-06-13 12:52 1126通过这几天对一个 ... -
byte[]转化成其他数据类型
2012-05-14 16:41 1605Java与其他语言数据类型之间的转换方法实例程序 /*** ... -
java中byte转换int时为何与0xff进行与运算
2012-05-14 16:39 1028java中byte转换int时为何 ... -
java整型数与网络字节序的 byte[] 数组转换关系
2012-05-14 16:31 6415工作项目需要在 java 和 c/c++ 之间进行 ... -
利用 Base64 缩短 UUID 至22位
2012-04-15 18:57 7119UUID还是比较常用的,尤其在web应用里。 有时在UR ... -
图解Java中的值传递与引用传递(更新版)
2012-04-09 12:49 1138编程的人,都会遇到值传递与引用传递的困惑,不过很快都会迎 ...
相关推荐
详细解绍SWT运行环境的配置。 欢迎大家下载!
swt linux环境运行jar包
swt运行时所需的dll文件,包括swt-awt-win32-3236.dll swt-gdip-win32-3236.dll swt-win32-3229.dll swt-win32-3236.dll
此为基于Java SWT的数据库管理系统,实现的功能有限,并且项目中所需的hibernate相关的包和数据库,SWT相关的包自己下载加载进去就可以运行了,希望各位能够将自己实现的功能加上去!
SWT写的住院管理系统,不错的学习SWT的经典源代码。
swt2.rarswt2.rarswt2.rarswt2.rarswt2.rarswt2.rar
简单的学生管理系统,只有增删改查功能。 布局使用了 Composite面板,自己写的入门级别的。为了是联系一下,以前没有接触过、算是了解。
swt内存泄露解决办法以及检测内存泄露工具
swt开发的医院住院管理系统,数据库为SQL
swt总结draw2d绘图
java SWT 对话框 table 添加 删除 修改 查看信息 menu栏操作 右键点击查看
上传的资源为swt图书管理系统,基本语言采用的是java编写的swt项目,内含mysql数据库脚本与项目源代码,还有部署录制视频与截图。项目是用来完成数据库课程设计的,功能基本都已实现,内含数据库课程设计的文档与...
系统相关信息: 收集系统CPU,内存,环境变量等相关信息。 系统会话: 提供关机,休眠,重启,注销等功能。 系统IO及网络功能: 提供磁盘和网络相关信息。 活动桌面功能: 管理Windows活动桌面。 系统钩子: 注册和卸载...
上传的资源为swt人事管理系统,基本语言采用的是java编写的swt项目,内含mysql数据库脚本与项目源代码,还有部署录制视频与截图。项目是用来完成数据库课程设计的,功能基本都已实现,内含数据库课程设计的文档与...
一个基于SWT设计的图书馆管理系统,可以实现还书借书等一系列图书馆需要的操作
SWT配置 SWT配置 SWT配置 SWT配置 SWT配置 SWT配置 SWT配置 SWT配置
swt线程冲突与解决,swt的使用中,UI主线程往往容易与用户线程产生冲突,这个时候就需要使用同步和异步的思想来解决这个问题
swing2swt java应用开发包,貌似现在很少了
eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse swt eclipse ...