2015-10-20 96 views
0

我正在尝试在hadoop-mapreduce-examples-2.7.1.jar上使用gcj从jar文件生成本机机器码。我需要这个来进行我的研究。但我得到的错误:预期类型 '的java.lang.Throwable',但堆栈包含 'java.io.IOException的'尝试编译hadoop mapreduce示例时出现gcj错误

我有gcc版本4.8.4(Ubuntu的4.8.4-2ubuntu1〜14.04)和我用的命令是:

gcj --classpath={hadoop-mapreduce-client-core-2.7.1.jar:hadoop-common-2.7.1.jar:commons-cli-1.2.jar:commons-logging-1.1.3.jar:guava-11.0.2.jar:hsqldb-2.0.0.jar} -d {destination} hadoop-mapreduce-examples-2.7.1.jar 

因为我是初学者,所以我不确定我是否在正确的道路上。我甚至不确定这是否可能。请建议。

回答

0

是否添加-findirect-dispatch标志适合您?

请注意,您还可以添加-O1,-O2-O3优化标志。在我的情况下,-O1实际上效果最好,但你必须自己测试。