Java 工具集教程

idlj.exe 用于将IDL转换为Java接口文件

idlj.exe 是 Java 开发工具包(JDK)中的一个工具,用于将 IDL(Interface Definition Language,接口定义语言)文件转换为 Java 接口文件。IDL 是一种用于定义 CORBA(Common Object Request Broker Architecture,公共对象请求代理结构)中的接口的语言,它可以用于描述接口的方法、参数、异常等信息。idlj.exe 工具可以将 IDL 文件转换为 Java 接口文件,以便在 Java 中实现 CORBA 的分布式对象调用。

命令语法

编译器用法:

java com.sun.tools.corba.se.idl.toJavaPortable.Compile [选项] <idl 文件>

其中, <idl 文件> 是包含 IDL 定义的文件的名称, 而 [选项] 是下列选项的任意组合。选项是可选的, 并且显示顺序并不固定; <idl 文件> 是必需的,并且必须显示在最后。

选项:

  • -d <符号>  这等同于 IDL 文件中的下面一行:  #define <符号>

  • -emitAll  发出所有类型, 包括在 #included 文件中找到的类型。

  • -f<side>  定义要发出哪些绑定。<side> 是 client,server, all, serverTIE, allTIE 之一。serverTIE 和 allTIE 导致发出委派模型骨架。如果未使用此标记, 将假定为 -fclient。

  • -i <包含路径>  默认情况下, 将在当前目录中扫描包含的文件。此选项将添加另一个目录。

  • -keep  如果要生成的文件已存在, 请不要覆盖它。默认情况下会覆盖它。

  • -noWarn  隐藏警告。

  • -oldImplBase  生成与旧版 (1.4 版之前) JDK ORB 兼容的骨架。

  • -pkgPrefix <t> <前缀>  当在文件范围内遇到类型或模块名 <t> 时, 在为 <t> 生成的所有文件的 Java 程序包名前添加 <前缀>。

  • -pkgTranslate <t> <pkg>  当遇到类型或模块名 <t> 时, 在生成的 Java 程序包中将其替换为 <pkg>。请注意,将首先进行 pkgPrefix 更改。<t> 必须与完整程序包名完全匹配。另外, <t> 不能为 org, org.omg 或 org.omg 的任何子程序包。

  • -skeletonName <xxx%yyy>  根据模式命名骨架。默认值为: %POA 表示 POA 基类 (-fserver 或 -fall) _%ImplBase 表示 oldImplBase 基类 (-oldImplBase 和 (-fserver 或 -fall))。

  • -td <dir>  使用 <dir> 表示输出目录以代替当前目录。

  • -tieName <xxx%yyy>  根据模式命名 tie。默认值为: %POATie 表示 POA tie (-fserverTie 或 -fallTie) %_Tie 表示 oldImplBase tie (-oldImplBase 和 (-fserverTie 或 -fallTie))。

  • -v, -verbose  详细模式。

  • -version  显示版本号并退出。

命令示例

(1)将 IDL 文件转换为 Java 接口文件

idlj.exe idl_file

这个命令将把指定的 IDL 文件 (idl_file) 转换为 Java 接口文件。转换后的 Java 接口文件将包含 IDL 文件中定义的接口、方法、参数和异常等信息。

(2)指定输出目录

idlj.exe -d output_dir idl_file

这个命令将把指定的 IDL 文件 (idl_file) 转换为 Java 接口文件,并将生成的 Java 接口文件输出到指定的目录 (output_dir) 中。可以通过这种方式来指定生成文件的输出位置。

(3)指定输出包名

idlj.exe -pkgPrefix package_name idl_file

这个命令将把指定的 IDL 文件 (idl_file) 转换为 Java 接口文件,并在生成的 Java 接口文件中指定包名 (package_name)。可以通过这种方式来指定生成文件的包名。

说说我的看法
全部评论(
没有评论
关于
本网站专注于 Java、数据库(MySQL、Oracle)、Linux、软件架构及大数据等多领域技术知识分享。涵盖丰富的原创与精选技术文章,助力技术传播与交流。无论是技术新手渴望入门,还是资深开发者寻求进阶,这里都能为您提供深度见解与实用经验,让复杂编码变得轻松易懂,携手共赴技术提升新高度。如有侵权,请来信告知:hxstrive@outlook.com
公众号