【发布时间】:2014-10-31 15:07:53
【问题描述】:
`Platform`: Windows 7, MinGW, MSYS, Java 1.5
我有 thrift 0.9.1 编译器(为 Windows 预构建)和源代码。我使用 Ant 构建 java 库。 我创建了一个 thrift idl 并使用编译器对其进行编译。生成代码文件没有问题。 我在我的项目中添加了这些文件,并添加了 slf4j(从他们的站点下载)和 libthrift。 我之前遇到的大多数错误(导入等)都消失了,除了与覆盖方法相关的错误。 所以基本上它会抱怨:
Server 类型的方法 clear() 必须覆盖超类方法
同样适用于compareTo、write、read 等。简而言之,它抱怨所有被覆盖的方法。这是所有 thrift 编译器生成的代码,我没有更改任何内容。
有什么不兼容的地方吗?我真的找不到任何提及。我试过删除然后添加库,我也尝试过清理、刷新、验证项目,但错误仍然存在。
我也尝试过编译代码(节俭代码),但 MinGW 也是一个非常令人头疼的问题。即使我已经安装它也找不到configure。如果我运行msys 控制台,它可以configure 但不能make 抱怨inttypes.h 不存在(它不在msys 包含目录中,但存在于MinGW 包含目录中。)。
任何建议将不胜感激。
【问题讨论】:
-
顺便说一句,在 Windows 上不要使用 MinGW。编译器文件夹中有一个 Visual Studio 项目。您基本上只需要 flex/bison 支持,在网络上的某个地方有一个适用于 Windows 的安装包就可以了。 IIRC就是这样。奇迹般有效。据我所知,由于一堆与 MinGW 相关的错误,MinGW 构建不再适用于 Windows。由于 VS 项目运行良好,因此不再需要 PITA。
-
这是次要问题,我也可以从他们的网站获取二进制文件。但主要问题是生成的代码无法编译
-
"但主要问题是生成的代码无法编译" - 老实说,难以置信。可以准备一个测试用例吗?
-
我刚刚添加了您“忘记”要提及的重要信息。
标签: java c++ eclipse compilation thrift