【原创】Windows下使用 Eclipse 管理 RabbitMQ 源码之问题解决

      使用 Eclipse + Erlide 来管理 Erlang 代码是一种常见方式。本文简要说明下,本人在 Windows 下管理 RabbitMQ 代码时遇到的小问题。

      首先,搭建好 Eclipse + Erlide 的环境,方法略;然后,将下载好的 RabbitMQ 源码放置在指定的目录中,比如 D:\ErlangCode\rabbitmq-server-3.0.0 ,目录中的内容如下图所示:

      照道理讲,一般源码包中的 README 和 INSTALL 会说明源码包的使用方式,当时 RabbitMQ 的不是,这两个文件中都仅仅给出了到官网的网页链接,其中一个网页中提到了

Change to the rabbitmq-server directory, and type make.

      好吧,以上用法时针对 Unix-like 中的 make 方式的。如果你打算在 Windows 中搭建个 linux 模拟环境以使用 make 命令按上面说的,执行个 make 就 ok 了。但我不想搭环境,也不打算直接在 Linux 上执行命令后,再将文件拷回到 Windows 上来,所有我要研究下如何解决这个问题。好,先将这个问题暂停下,说说我在 Eclipse 上得到了什么。

      将 RabbitMQ 工程导入到 Eclipse 中后,你能看到下图所示内容:

      恩,该导入的都导入了,但是出现了很多红色的叉,可以看到 Problems 标签下的 Error 描述信息为 “can't find include file "rabbit_framing.hrl"” ,回到源码所在的根目录中搜索该文件,该文件确实是不存在的,恩,该文件不存在的原因我就不啰嗦了,可以在官方文档中找到答案,我们需要解决的是如何得到该文件。

      在没有其他线索的情况下,最好的办法还是看看源码包中的其他文件,看看是否有什么相关的。最后可以定位到 rabbitmq-server-3.0.0 中的 Makefile 文件。其中能说明问题的代码是

?


1

2

$(INCLUDE_DIR)/rabbit_framing.hrl: codegen.py $(AMQP_CODEGEN_DIR)/amqp_codegen.py $(AMQP_SPEC_JSON_FILES_0_9_1) $(AMQP_SPEC_JSON_FILES_0_8)

    $(PYTHON) codegen.py --ignore-conflicts header $(AMQP_SPEC_JSON_FILES_0_9_1) $(AMQP_SPEC_JSON_FILES_0_8) $@

      可以看出 rabbit_framing.hrl 文件的产生,依赖了  codegen.py 、amqp_codegen.py 、$(AMQP_SPEC_JSON_FILES_0_9_1) 及 $(AMQP_SPEC_JSON_FILES_0_8) 对应的文件。后两个宏的定义同样可以找到:

?


1

2

AMQP_SPEC_JSON_FILES_0_9_1=$(AMQP_CODEGEN_DIR)/amqp-rabbitmq-0.9.1.json

AMQP_SPEC_JSON_FILES_0_8=$(AMQP_CODEGEN_DIR)/amqp-rabbitmq-0.8.json

      好,现在按照上面脚本中的命令,在 CMD 中执行:

      此时查看 include 目录你会发现已经生成了我们要的文件:

      按照上面的方法,生成后续需要的另外两个文件 -- rabbit_framing_amqp_0_9_1.erl 和 rabbit_framing_amqp_0_8.erl :

      此时,在 Eclipse 中对 RabbitMQ 工程执行 Refresh 动作,你会发现所有的红色叉叉都没了,世界变美好了,哈哈~~

      接下来,该干啥干啥吧~~

时间: 2024-09-12 12:52:24

【原创】Windows下使用 Eclipse 管理 RabbitMQ 源码之问题解决的相关文章

在Windows下用Eclipse+CDT+MinGW搭建C++开发平台

本文提供了在Windows下用Eclipse+CDT+MinGW搭建C / C++开发平台的方法, 测试平台为Windows XP Sp2 CHS.   以下软件均为Windows平台下的版本. 1.安装JDK,目的是为了Eclipse的运行.目前版本是jdk-1_5_0_06-windows-i586-p.exe ,下载地址http://java.sun.com/javase/downloads/index.jsp.仅安装JDK即可.假设安装路径为D:\java\JDK.配置系统环境变量(右键

linux下mysql 5.5.38 源码安装笔记

接上一篇<linux下mysql 5.1.73 源码安装笔记>,继续安装一个mysql 5.5.38 版.同样使用源码安装.并且实现两个实例同时运行,互不冲突. 这篇笔记记录的简单些,省略一些和上篇笔记相同的步骤. 第一步,下载: mysql 5.5.38官方下载地址: http://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.38.tar.gz df5071c49764c3ad65df04ff20866a86 解压的步骤就不重复了. 第二步

uiautomato...-在eclipse 导入uiautomator 源码报错

问题描述 在eclipse 导入uiautomator 源码报错 从csdn下载的uiautomator 源码,导入到eclipse的时候报错 auto share git projects has encountered a problem.....谁知道怎么搞? 解决方案 eclipse中乱码解决及注释模板导入及linux下eclipse导入源码导致源码编译报错Eclipse使用Maven导入Robotium源码后报错

Eclipse与Android源码中ProGuard工具的使用

由于工作需要,这两天和同事在研究android下面的ProGuard工具的使用,通过查看android官网对该工具的介绍以及网络上其它相关资料,再加上自己的亲手实践,算是有了一个基本了解.下面将自己的理解和认识简要的做个笔记,有异议或者不解的,可以直接留言. 什么是ProGuard工具? ProGuard是android提供的一个免费的工具,它能够移除工程中一些没用的代码,或者使用语义上隐晦的名称来重命名代码中的类.字段和函数等,达到压缩.优化和混淆代码的功能.具体来说,使用ProGuard工具

Hadoop大象之旅010-使用eclipse查看hadoop源码

Hadoop大象之旅010-使用eclipse查看hadoop源码                                                                老帅 我这使用的是hadoop-1.1.2.tar.gz,这个文件可以在下面地址下载到: 官方地址:http://archive.apache.org/dist/hadoop/core/hadoop-1.1.2/   1.将hadoop-1.1.2.tar.gz解压缩 文件夹结构如下所示:   2.在My

linux下mysql 5.1.73 源码安装笔记

linux下安装mysql有多种方式,相对而言源码安装速度最快,兼容性也会好些.相反,源码安装更麻烦一些. 第一步,下载和解压安装包: mysql 5.1.73官方下载地址. http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.73.tar.gz md5:887f869bcc757957067b9198f707f32f 1 md5sum mysql-5.5.38.tar.gz      #计算md5校验和 2 tar -zxf mysql

eclipse打开android源码出错

问题描述 eclipse打开android源码出错 eclipse打开android自带源码就出错Failed to create the part's controls 只要是安卓自带类或方法的源码都无法打开,请问这是什么原因,怎么解决,这个问题困扰我很久了,网上也没有找到能解决的方法,哭求大神啊 解决方案 ADT 插件安装了没有? 解决方案二: Android SDK V19 的版本没有安装. 解决方案三: 你sdk都没有19的版本,肯定不行啦,镜像下载一下最新的sdk吧. 解决方案四: 需

eclipse中的源码如何打包为.exe文件

问题描述 eclipse中的源码如何打包为.exe文件 如何将eclipse中编写的程序源码导出,最后转为.exe文件,就像网上下载的软件那样的格式,让那些没安装eclipse的电脑也能运行你写的程序,求赐教.详细的步骤和使用的软件 解决方案 eclipse只是开发工具,它支持很多平台和编程语言,假设你用java编写客户端程序,那么可以参考http://jingyan.baidu.com/article/358570f6727bb7ce4724fc88.htmlhttp://blog.csdn.

与计算机历史博物馆一起合作将早期Windows版本的MS-DOS及Word源码对公众开放

微软本日宣布与计算机历史博物馆一起合作将早期Windows版本的MS-DOS及Word源码对公众开放. MS-DOS的历史要追溯到1980年的一个代号名为"Chess"的项目.项目一开始的目标是为IBM提供一个BASIC语言的解析器,但随后被要求进一步开发一个操作系统.微软动用了1/3员工(35人)的力量最终做出了两个版本,一个是授权给IBM的PC-DOS,另一个则是给其他PC制造商的MS-DOS,代码的大小不超过300KB.而Windows版的Word则是在1989年发布,之后用了不