我可以自己编译java吗?

时间:2009-05-07 09:05:32

标签: java performance

他们是否说sun的java现在是开源的 - 那么我可以从源代码编译所有的patform吗?

我使用gentoo并且我发现了一个很好的性能改进,我自己编译了系统,所以可以用java(vm运行时和库类)来完成吗?

可以在windows / linux下进行吗?

有没有人这样做?

它有意义吗?

6 个答案:

答案 0 :(得分:5)

是的,你可以。 Sun的OpenJDK项目中提供了预构建的二进制文件,源代码等:

http://openjdk.java.net/

它是否会对性能产生影响很难说清楚。可能,但通常差异不大。

答案 1 :(得分:3)

是的,现在应该可以了 - 不,它不会给你任何好处,除非你有一个编译器从同一个源输入产生更好的字节代码。鉴于将java转换为字节码的简单性以及大多数优化都是在运行时完成的事实,这似乎不太可能。

答案 2 :(得分:3)

是的,这是可能的。如果您检查Linux发行版的存储库,您会注意到OpenJDK通常有选项。你可以在http://openjdk.java.net/上找到你所追求的一切。

答案 3 :(得分:0)

我不太清楚你为什么要这样做,除了教育目的。

Sun在所有方面(JVM以及默认库)的性能改进方面付出了相当多的努力,我认为没有理由为什么你会更好。

同样,很高兴知道如何做到这一点,但我不希望大幅提升性能。

答案 4 :(得分:0)

我会开始寻找你的java jdk源代码here

答案 5 :(得分:0)

Java将程序编译为机器代码,根据我在Sun网站上收集的内容,它对使用哪种编译器非常敏感。因此,您需要使用受支持的构建环境来确保结果100%正确。

建立JDK对于没有经验的人来说并不容易,所以除非你觉得在家里阅读Makefile我会留下这个项目以供日后使用:)