如何提高Java的编译速度

hoodlake 发布于 2014/08/01 21:01
阅读 2K+
收藏 2

项目每次全部编译需要20分钟左右,这种情况下,cpu维持在20%左右,memory也没耗多少

怎样让javac更加有效的利用cpu和memory来加快编译速度

i3的处理器,4G内存

加载中
1
OSC闲人
OSC闲人
这个问题很有趣,想知道你的项目大小和java版本,比较老的java版本编译速度确实会慢,而且很多语法糖都是编译期间处理的,比如泛型察除,建议解决方法是,1.升级java版本,2.使用maven或者ant这些工具编译,他们都有批量编译和增量编译的功效
hoodlake
hoodlake
jdk1.4,ant编译的,偶尔会全部删除,然后全部编译一遍,主要是领导有的时候想看某个效果,正好我clean了,然后让领导等半个小时,就没有然后了。。。
0
南湖船老大
南湖船老大

20分钟,那看来你项目也不小。不过20分钟,对于编译速度来说,根本不算慢。

你就是在Linux上编译一个C/C++的项目,稍微大点的也要半个小时,一两个小时都很常见。我在云主机里编译一个openSSL这样的小软件都要两分钟。

话又说回来,难道你每次都要全部编译所有源代码么。比如Eclipse的话,都是增量编译的啊。

进入正题,这个要看JVM参数的设置了,我没玩过。

eechen
eechen
回复 @南湖船老大 : LAMP是一个软件堆栈,不是单独一个软件.而且PHP也不是一个小项目,解压后代码将近90MB,难道你们Java项目的代码都几百兆的吗?
南湖船老大
南湖船老大
@eechen 也才几十M代码而已。如果lamp
eechen
eechen
夸张了,i3-2120在Win上VirtualBox虚拟Ubuntu Server,分配一个核心编译PHP5.4,耗时也就10分钟.
0
dreamers
dreamers
还没有见过在Eclipse里要编译20多分钟的项目。看来我这还是小打小闹呀。
dsgfdsgf
dsgfdsgf
同感
0
NealFeng
NealFeng
那看看编译时io占用怎样,如果占用基本100%了,那换ssd吧。
0
yearh
yearh
建议尽早把项目按业务拆分,欠的债总要还的。。
hoodlake
hoodlake
也许靠谱,乱七八糟的代码一大堆,这个项目有12年了
0
不日小鸡
编译20分钟,源代码是得有几个G?
不日小鸡
回复 @hoodlake : 你的编译20分钟已经很夸张了
hoodlake
hoodlake
2万多个java文件,哪有那么夸张
0
haixiang42
haixiang42

换成固态硬盘吧,速度会提升很多。

还要更快?把处理器换成i7好了。

0
pantrick
pantrick
无所谓,编译时间正好坐下来喝杯茶,再和妹子聊聊!
hoodlake
hoodlake
我也是这么想的,否则还真没什么时间休息
0
wangxigui
wangxigui
我编译Android4.2的时候,台式机i5,8G内存,4个cpu基本100%,得一个小时左右,
返回顶部
顶部