上周刚刚升级了macOS Sierra系统,升级后在使用gradle构建项目时发现在Resolving dependencies这一步变得奇慢无比,本来3分钟能够构建完成的项目用了30多分钟才构建完,这给我带来的不小的困扰。在Google了很多资料后,终于解决了这个问题。
解决方案
首先打开host文件
sudo vim /etc/hosts
把host文件中有localhost的行后面加上yourmacname.local即可。
127.0.0.1 localhost yourmacname.local
::1 localhost yourmacname.local
yourmacname是你计算机的名字,在System Preferences - Sharing中能够找到
根本原因
出现问题的根本原因在于java.net.InetAddress.getLocalHost()
这个函数耗时严重,在新版macOS上会耗时5000ms左右,而在其它机器上耗时仅为8ms。因此,gradle在构建时大量调用这个方法就会导致构建异常缓慢。根据这个实验我们知道了解决这个问题的办法就是在localhost后面加上yourmacname.local,这是更新到macOS Sierra的一个坑。
最后,总结一下最近更新macOS Sierra遇到的其它坑,希望以后找到解决方案。
- Mou失效了
- QQ截图不能直接使用
- 使用预览看PDF的时候三指取词功能失效