ice安装以及简单使用
来源:互联网 发布:javascript python 编辑:程序博客网 时间:2024/05/03 02:51
ICE(Internet Communications Engine)是一个中间件平台。作为一个高性能的互联网通信平台,ICE包含了很多分层的服务和插件(Plug-ins),并且简单、高效和强大。
ICE当前支持C++、Java、C#、Visual Basic、Python和PHP编程语言,并支持在多种操作系统上运行。更多的操作系统和编程语言将会在以后的发布中支持。
1:下载安装包:http://www.zeroc.com/download.html
2:安装ice并在环境变量中配置ice的安装路径 例如:path=D:\ice\Ice-3.5.1\bin
3:如果进行生成java程序,使用slice2java,出现如下:代表安装成功。
slice2java: error: no input file
Usage: slice2java [options] slice-files...
Options:
-h, --help Show this message.
-v, --version Display the Ice version.
-DNAME Define NAME as 1.
-DNAME=DEF Define NAME as DEF.
-UNAME Remove any definition for NAME.
-IDIR Put DIR in the include file search path.
-E Print preprocessor output on stdout.
--output-dir DIR Create files in the directory DIR.
--tie Generate TIE classes.
--impl Generate sample implementations.
--impl-tie Generate sample TIE implementations.
--depend Generate Makefile dependencies.
--depend-xml Generate dependencies in XML format.
--list-generated Emit list of generated files in XML format.
-d, --debug Print debug messages.
--ice Permit `Ice' prefix (for building Ice sourc
--underscore Permit underscores in Slice identifiers.
--checksum CLASS Generate checksums for Slice definitions in
--stream Generate marshaling support for public stre
--meta META Define global metadata directive META.
4:使用ice写一个脚本
module demo {
interface Printer {
void printString(string s);
};
};
文件名为printer.ice
5:转到printer.ice所在目录,使用命令slice2java printer.ice
生成的文件copy到你的编辑器中。
6:引入Ice.jar到你的项目下面,使用你的ice安装时lib下面的Ice.jar。
7:编写服务端和客户端程序
客户端:
8:先执行服务端,后执行客户端。互相通信。
ICE当前支持C++、Java、C#、Visual Basic、Python和PHP编程语言,并支持在多种操作系统上运行。更多的操作系统和编程语言将会在以后的发布中支持。
1:下载安装包:http://www.zeroc.com/download.html
2:安装ice并在环境变量中配置ice的安装路径 例如:path=D:\ice\Ice-3.5.1\bin
3:如果进行生成java程序,使用slice2java,出现如下:代表安装成功。
slice2java: error: no input file
Usage: slice2java [options] slice-files...
Options:
-h, --help Show this message.
-v, --version Display the Ice version.
-DNAME Define NAME as 1.
-DNAME=DEF Define NAME as DEF.
-UNAME Remove any definition for NAME.
-IDIR Put DIR in the include file search path.
-E Print preprocessor output on stdout.
--output-dir DIR Create files in the directory DIR.
--tie Generate TIE classes.
--impl Generate sample implementations.
--impl-tie Generate sample TIE implementations.
--depend Generate Makefile dependencies.
--depend-xml Generate dependencies in XML format.
--list-generated Emit list of generated files in XML format.
-d, --debug Print debug messages.
--ice Permit `Ice' prefix (for building Ice sourc
--underscore Permit underscores in Slice identifiers.
--checksum CLASS Generate checksums for Slice definitions in
--stream Generate marshaling support for public stre
--meta META Define global metadata directive META.
4:使用ice写一个脚本
module demo {
interface Printer {
void printString(string s);
};
};
文件名为printer.ice
5:转到printer.ice所在目录,使用命令slice2java printer.ice
生成的文件copy到你的编辑器中。
6:引入Ice.jar到你的项目下面,使用你的ice安装时lib下面的Ice.jar。
7:编写服务端和客户端程序
服务端:
package servant;import Ice.Current;import demo._PrinterDisp;public class PrinterI extends _PrinterDisp{@Overridepublic void printString(String s, Current __current) {System.out.println(s);}}
package server;import servant.PrinterI;public class Server {public static void main(String[] args) {int status=0;Ice.Communicator ic=null;try{ic = Ice.Util.initialize(args);Ice.ObjectAdapter adapter = ic.createObjectAdapterWithEndpoints("SimplePrinterAdapter", "default -p 10000");Ice.Object object = new PrinterI();adapter.add(object, Ice.Util.stringToIdentity("SimplePrinter"));adapter.activate();ic.waitForShutdown();}catch(Ice.LocalException e){e.printStackTrace();status=1;}catch(Exception e){System.err.println(e.getMessage());status=1;}finally{if(ic!=null){ic.destroy();}System.exit(status);}}}
客户端:
package client;import demo.PrinterPrx;import demo.PrinterPrxHelper;public class Client {public static void main(String[] args) {int status=0;Ice.Communicator ic = null;try{ic = Ice.Util.initialize();Ice.ObjectPrx base = ic.stringToProxy("SimplePrinter:default -p 10000");PrinterPrx printer = PrinterPrxHelper.checkedCast(base);if(printer==null){throw new Error("null proxy");}printer.printString("hello world!");}catch(Ice.LocalException e){e.printStackTrace();status=1;}catch(Exception e){System.err.println(e.getMessage());status=1;}finally{if(ic!=null){ic.destroy();}System.exit(status);}}}
8:先执行服务端,后执行客户端。互相通信。
0 0
- ice安装以及简单使用
- elipse安装ice插件以及使用
- ICE安装及使用示例
- ICE的安装以及环境变量配置
- ICE简单介绍及使用示例
- 使用ICE实现一个简单的文件系统
- ICE简单介绍及使用示例
- ICE简单介绍及使用示例
- ICE简单介绍及使用示例
- ICE简单介绍及使用示例
- ICE简单介绍及使用示例
- RPC之ICE java简单使用
- ICE简单介绍及使用示例
- ice使用简单式例 c++
- ICE简单介绍及使用示例
- ICE简单介绍及使用示例
- ICE简单介绍及使用示例
- vs2008 下ICE 3.4.2 安装使用
- 九章算法面试题23 栈上实现Min函数
- 开发拾遗篇:去除未使用的命名空间
- [LeetCode] Minimum Size Subarray Sum
- mongodb的php驱动
- XML中DTD,XSD的区别与应用
- ice安装以及简单使用
- 笔记:设备驱动程序
- 动态限制UITextField的输入位数
- 表单按回车自动提交(转自他人)
- 【java多线程的代价】
- 九章算法面试题24 Fizz Buzz
- Reveal界面调试工具
- 你好,树
- 减小apk体积