爪哇一角
共同探讨STRUTS#HIBERNATE#SPRING#EJB等技术
posts - 3, comments - 6, trackbacks - 0, articles - 99
BlogJava
::
首页
::
新随笔
::
联系
::
聚合
::
管理
Eclipse中RMI plugin的实现(调试配置)
Posted on 2009-09-29 17:09
非洲小白脸
阅读(728)
评论(0)
编辑
收藏
所属分类:
其他资源
现在Eclipse使用的比较多,而其功能的可扩展性也是超级强大,可以将多种工具和开发技术通过插件包的形式融合进来。这里说一下怎么通过RMI Plugin在Eclipse里面调试RMI程序。
一、准备安装包
Eclipse的下载地址这里就不说了,可以参考我的blog中《Eclipse开发struts指南》一文。这里提供RMI Plugin
for
Eclipse 的下载地址: http:
//www.genady.net/rmi/v16/index.html?/rmi/v16/main.html&MAIN16
破解版下载地址:
http:
我 们下载适合eclipse3.1的1.6.5版本,得到net.genady.rmi_1.6.5.zip安装包。 这里使用的是 Eclipse3.1版本,如果是2.x版本的请下载1.6.0版本的安装包。同时需要JDK1.4.2以上版本的支持,这里不讲了,请自行下载安装。
//www.inspiresky.com/bbs/dispbbs.asp?boardID=13&ID=2160&page=1
二、安装插件包
解压缩安装包net.genady.rmi_1.
6.5
.zip,将解压后得到的features和plugins文件夹拷贝至Eclipse安装根目录下,覆盖原有文件夹。
启动Eclipse(如果已经启动,请重新启动Eclipse),这时在工具栏上会发现多了一个工具图标,里面有Registry的管理选项,这个就是RMI Registry的管理器。说明已经安装成功了。
三、设置开发环境
在安装好插件包后,我们来设置RMI开发环境。 启动Eclipse,在菜单window->preferences对话框中,选中左边树菜单java->rmi,右边窗口会出现RMI Plugin的默认设置信息。
最上面的Path to RMI registry设置java的RMI Registry的路径,如这里设置的是C:\Program Files\Java\jdk1.
5
.0_05\bin\rmiregistry.exe,一般不用管它。下面的一个框是RMI的服务端口,默认是
1099
,这个类似tomcat的服务端口
8080
一样,链接的时候需要找到对应的端口才能链接上。其实RMI的最低层是socket。
这里需要特别指出的是RMI Plugin是个收费的Eclipse插件,有
15
天的免费试用期。而RMI属性中最大的窗口就是填使用授权信息的。我的网站论坛提供破解版本的下载供个人研究之用。
开发环境到这里也只是基本的设计完成,其他的还要在具体的项目中进行设置,下面我们就开发一个简单的演示项目。
四、开发演示项目
这里偷一下懒,引用别人的一篇文章的实例,大家可以比照在eclipse中创建该项目;也可以顺便了解一下RMI的基本机制,和不用工具的开发方法。
文章地址:
http:
//www.inspiresky.com/bbs/dispbbs.asp?boardID=22&ID=1687&page=1
这里采用第五楼文章中的例子。如果你对RMI没有什么太多了解请一定先看此文章。 这里我们一步一步来在eclipse中创建我们的演示项目:
1、启动eclipse,新建项目
菜单file->new->projects->java projects,点击next,projects name 为RMITest。其他默认,点击next,点击finish。OK,新项目建成。
2
、新建服务器包
左边树中右键项目RMITest,
new
->
package
,新建包com.inspiresky.rmi.server。
3
、创建远程对象接口类
右键点击刚才创建的包,
new
->Interface,新建接口I_Hello。然后编辑我们新建的接口,代码如下所示:
package
com.inspiresky.rmi.server;
import
java.rmi.Remote;
import
java.rmi.RemoteException;
/*
* Junsan */
public
interface
I_Hello
extends
Remote{
public
String SayHello()
throws
RemoteException; }
4
、定义一个实现该接口的类
右键点击刚才创建的包,
new
->
class
,新建类文件Hello。然后编辑我们新建的接口,代码如下所示:
package
com.inspiresky.rmi.server;
import
java.rmi.RemoteException;
import
java.rmi.server.UnicastRemoteObject;
/*
* Junsan
*/
public
class
Hello
extends
UnicastRemoteObject
implements
I_Hello{
private
static
final
long
serialVersionUID = -8868676826752697887L;
public
Hello()
throws
RemoteException
{
}
public
String SayHello()
//这个是实现I_Hello接口的方法
{
return
"Hello world !!"
;
}
}
好了到此,已经完成了主要服务对象的编写工作。
5
、生成程序的存根文件
右键点击工程名称 RMITest,RMI->Enable Stubs Generations。选中后,在我们工程文件夹RMITest/bin下的相应的包中 com\inspiresky\rmi\server下就自动生成了Hello_Stub.
class
类。
6
、创建RMI服务器类
同
4
中的过程,新建类RMI_Server,并编辑器代码为:
package
com.inspiresky.rmi.server;
import
java.rmi.Naming;
/*
* Junsan
*/
public
class
RMI_Server {
public
RMI_Server() {
}
public
static
void
main(String[] args) {
try
{
Hello hello =
new
Hello();
Naming.rebind(
"RMI_Hello"
, hello);
System.out.println(
"=== Hello server Ready === "
);
}
catch
(Exception exception) {
exception.printStackTrace();
}
}
}
7
、新建客户端包
方法同
2
,包名com.inspiresky.rmi.client。
8
、创建客户端
在新建的包中同
4
过程,创建类RMI_Client。并编辑代码如下:
package
com.inspiresky.rmi.client;
import
java.rmi.Naming;
import
com.inspiresky.rmi.server.I_Hello;
/*
* Junsan
*/
public
class
RMI_Client {
public
RMI_Client() {
super
();
}
public
static
void
main(String[] args) {
try
{
I_Hello hello = (I_Hello) Naming.lookup(
"RMI_Hello"
);
System.out.println(hello.SayHello());
}
catch
(Exception e) {
e.printStackTrace();
}
}
}
OK,到这里我们就可以准备调试运行我们的程序了。
五、运行调试项目
在运行之前需要进行一下设置,否则,会提示错误信息,说找不到stub类。
1
、启动RMIRegistry
Eclipse菜单window->show view->others,在弹出菜单中选择RMI Views->RMI Registry Inspector,这是会多出来一个窗口,这里可以显示已经注册的RMI应用。
点击工具条上的RMI Plugin图标,在菜单中选择Start Local Registry。
注意这个只需要启动一次,除非你把它关掉。
2
、配置运行RMI服务
右键点击左边树中的RMI_Server.java文件,菜单Debug As ->RMI Application。在弹出对话框中找到RMI Properties标签页。
这时这里前两项显示红色。
选中java.security.police项的value框,点击选择按钮会出现文件选择对话框,我们这里设置成C:\Program Files\Java\jre1.
5
.0_05\lib\security\java.security。就是jre的安全策略配置文件,要选择成泥当前用的jdk的侧略文件。
选中第二项java.rmi.server.codebase的value项,这里选择编译后类包所在的文件夹。点击 选择按钮->add按钮->pick from workspace,选择当前工程RMITest的bin文件夹。这里是file:/E: /workspace/RMITest/bin/。
(这里有点要补充一下,还可以
点击选择按钮->add按钮->compute
from classpath)
点击apply按钮。
点击debug按钮。
这时Eclipse的console窗口中出现
=== Hello server Ready ===
表示RMI服务已经运行。
3
、设置调试信息
打开Hello.java文件,在
return
"Hello world !!"
;
处设置断点。
4
、运行客户端,调试程序
工程树中,右键点击RMI_Client.java文件,Run As -> Java Application。
我们点击后,窗口一闪而过,停止后,会发现光标已经停止在我们设定断点的地方。这里程序没有错误,我们按F6键继续,会进入程序下一步的运行文件,调试的时候就是这样子一步一步调试下去。这里我们按F8直接运行完代码,在console窗口中会显示
Hello world !!
表示程序已经运行成功。
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
Log4J的配置文件详解
POI通过读取Excel模板生成Excel文件
物化视图
String中特殊字符的替换
Velocity学习
在Tomcat中部署Java Web应用程序(jar命令打war包)
用Eclipse调试时不能用查看器查看iter.next()
JProbe 下载
java内存监控--JConsole 监控应用
FireBug 调试JS入门 —如何调试JS(转载保存)
Powered by:
BlogJava
Copyright © 非洲小白脸
日历
<
2024年11月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(2)
给我留言
查看公开留言
查看私人留言
随笔档案
2006年9月 (2)
文章分类
AJAX + jQuery(8)
ejb(1)
excel word + macro(3)
hibernate(7)
JSF(14)
oracle(15)
spring(2)
Spring mvc + Spring + MyBaties(2)
SQL Server(3)
tag和页面操作(3)
xml(1)
其他资源(23)
框架文章(5)
模式(11)
项目管理(1)
文章档案
2016年3月 (1)
2016年2月 (2)
2011年11月 (1)
2011年6月 (1)
2011年5月 (2)
2011年3月 (2)
2011年2月 (2)
2011年1月 (2)
2010年10月 (1)
2010年9月 (5)
2010年8月 (1)
2010年7月 (1)
2010年6月 (3)
2010年3月 (1)
2010年2月 (2)
2010年1月 (2)
2009年12月 (1)
2009年11月 (1)
2009年10月 (1)
2009年9月 (1)
2009年8月 (7)
2009年7月 (2)
2009年6月 (2)
2009年2月 (2)
2009年1月 (28)
2008年11月 (3)
2008年5月 (1)
2006年12月 (3)
2006年10月 (1)
2006年9月 (16)
搜索
最新评论
1. re: 在Tomcat中部署Java Web应用程序(jar命令打war包)[未登录]
<script>alert("XSS")</script>
--XSS
2. re: RtfTemplate 读取word模板生成文件
dadfssdfads打发斯蒂芬都是法师的合法华纺股份打法二胡的fasdfasdfffffffffffffff
--等等等
3. re: RtfTemplate 读取word模板生成文件
就卡死的肌肤
是打发时间肯定
阿卡设计的回复就卡死
按实际的合法可是
--421
4. re: jQuery介绍(自我学习)
大锅饭大范甘迪
--多个地方
5. re: jQuery介绍(自我学习)
古典风格
--多个地方
阅读排行榜
1. 米兰·昆德拉(359)
2. 食物相克小常识 (268)
评论排行榜
1. 食物相克小常识 (0)
2. 米兰·昆德拉(0)