栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java程序调用OpenDDS

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java程序调用OpenDDS

一、前言

前面我们用三篇博客介绍了

  • OpenDDS在WIndows上的环境配置

    Windows下的OpenDDS编译(超详细)_山中野竹的博客-CSDN博客_opendds windows

  • 三种方式运行发布订阅示例程序

    OpenDDS运行示例(Messenger)程序_山中野竹的博客-CSDN博客

  • 创建自己的发布订阅程序

    OpenDDS 创建自己的发布订阅程序_山中野竹的博客-CSDN博客

但上述都是OpenDDS自己的一个操作,那么如何在Java里面调用OpenDDS呢?

接下来介绍一下,如何使用Java来调用OpenDDS程序,介绍其准备工作和实例。

  • 首先,你的OpenDDS配置环境要能支持Java,因此之前的环境配置则不能满足,需要重新配置

    有了上述配置环境的基础,配置Java支持的环境就简单很多了,直接参考下面两篇博客即可

    Windows下OpenDDS安装_hbyangland的博客-CSDN博客_opendds安装

    OpenDDS Java开发(1)——基于Windows10的OpenDDS编译安装_二师兄1986的博客-CSDN博客_java opendds

  • 通过一个实例,在IDEA开发工具上,进行Java调用OpenDDS服务

二、实例演示

调用过程主要分为以下几步

  • 生成要调用的发布订阅的 java程序和jar包文件

  • 将 相应的jar包上传到本地maven仓库,并在Java项目中引用该Jar包

  • 将生成的 Java程序放在项目中,并调用程序实现发布订阅服务

1. 生成 要调用的java相关文件

这一步和前面介绍过 创建自己的发布订阅程序有点像,因此就简要介绍了。主要步骤为:

  • 创建一个 messenger文件夹,创建一个 UserMessenger.idl 文件

module UserManager {
 
#pragma DCPS_DATA_TYPE "UserManager::User"
#pragma DCPS_DATA_KEY "UserManager::User id"
 
  struct User {
    long id;
    string name;
    boolean sexual;
    long age;
    double height;
  };
};

  • 在cmd命令行窗口,在messenger路径下执行命令生成 UserManager_Export.h 文件

generate_export_file.pl UserManager>UserManager_Export.h

  

  • 创建 UserManager.mpc 文件

project: dcps_test_java {
 
  idlflags     += -Wb,stub_export_include=UserManager_Export.h 
                  -Wb,stub_export_macro=UserManager_Export
  dcps_ts_flags+= -Wb,export_macro=UserManager_Export
  idl2jniflags += -Wb,stub_export_include=UserManager_Export.h 
                  -Wb,stub_export_macro=UserManager_Export
  dynamicflags += USERMANAGER_BUILD_DLL
 
  specific {
    jarname     = UserManager
  }
 
  TypeSupport_Files {
    UserManager.idl
  }
}
  • cmd命令窗口,在该路径下,使用mwc命令编译 mpc文件

perl E:SoftwareWorkOpenDDSACE_wrappersbinmwc.pl -type vc10

  • 使用vc++ 编译 messenger.sln文件,先在vc++中打开文件,选择自己的运行环境(32位或者64位)然后生成解决方案即可

基本上配置完Java的环境都是64位的。

得到我们需要的 UserMessenger.jar包文件

第二步第三步参考了以下两篇博客,大家可以先学习一下

OpenDDS Java开发(一):理解Messenger示例_hbyangland的博客-CSDN博客_java opendds

OpenDDS Java开发(二):根据IDL进行代码生成_hbyangland的博客-CSDN博客_idl 代码生成

2. 上传 jar包文件到仓库,并在项目中引用

未完待续...... 

持续更新中

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1028739.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号