为了试一下完整的 SwiftUI 以及 Sidecar,还是手贱把 Mac 升到了 10.15。然后各种问题接踵而来,作为一个开发者,完全不能忍受升级后开发环境坏了。
目前我主要使用 JetBrains 全家桶,升级后一个都打不开,具体出错信息官网上已经有人报过了(点击查看),按官方的说法,是因为 jdk 版本的问题,在 Mac 10.15 下,需要用特定的 jdk。
那么问题就简单了,直接往这个方向去搜索,最终的解决方案如下:
先到 bintray
去下载 jbrsdk
,连接如下:
https://bintray.com/jetbrains/intellij-jbr/jbrsdk8-osx-x64/1596.1#files
下拉后找到 jbrsdk-8u212-osx-x64-b1596.1.tar.gz
并下载之。随着时间的推移,这个文件的版本号有可能会改变,下载最新的就好。另外需要注意的是,这里下载的版本是供 java8 使用的,如果你使用 java11 以上,那么就需要下载对应的 jbrsdk。
得到文件后,将其解压到 JVM 目录:
$ sudo tar -C /Library/Java/JavaVirtualMachines/ -xvf jbrsdk-8u212-osx-x64-b1596.1.tar.gz
接着我们将 IntelliJ IDEA 升级到最新版本,目前我用的版本是 2019.2 beta2
,推荐使用 JetBrains ToolBox
来下载,完成后可以执行以下命令:
$ cd ~/Library/Preferences/IntelliJIdea2019.2/
$ echo /Library/Java/JavaVirtualMachines/jdk idea.jdk
接着我们需要找到 IDEA 的 vmoptions 文件并修改之:
$ cd ~/Library/Application Support/JetBrains/Toolbox/apps/IDEA-U/ch-0/192.5728.12/
打开 IntelliJ IDEA 2019.2 EAP.app.vmoptions
并在最后加入一行:
-Dsun.font.layoutengine=icu
现在你就可以顺利使用 IDEA 了,对于全家桶内的其他成员,也可以按这个方法来修改,并注意 idea.jdk
需要按不同的软件作出改动:
APP | FILENAME |
---|---|
IntelliJ Idea | idea.jdk |
CLion | clion.jdk |
DataGrip | datagrip.jdk |
PyCharm | pycharm.jdk |
PhpStorm | phpstorm.jdk |
WebStorm | webstorm.jdk |
GoLand | goland.jdk |
RubyMine | rubymine.jdk |
Rider | rider.jdk |
MPS | mps.jdk |
对于 AppCode
,则需要如下修改:
$ cd ~/Library/Application Support/JetBrains/Toolbox/apps/AppCode/ch-0/192.5728.22
打开 AppCode 2019.2 EAP.app.vmoptions
并删除其中的 -yjpagent
一行。
到此为止,JetBrains 全家桶就全部修复完毕了。下面还得来修一下 pod
。
pod 的问题来源是因为 Mac 10.15 更新了内置了 Ruby,现在是 2.6 版本,而原本的 pod 脚本使用的 Ruby 是 2.3,由于找不到相应的版本而产生了错误。
修复方法也很简单(或许FQ反而不简单):
$ brew uninstall cocoapods
$ sudo gem install cocoapods
完成后系统里的 pod 变为 1.7.4 版本,即是依赖了 Ruby 2.6 的,可以正常工作。注意这里切记不要用 brew 来安装 pod,brew 上的最新版本是 1.7.2,它并不符合我们的要求。
好了,开发环境全部修完,下面让我哭一会,星际重制版不能玩了,刚买了皮肤,Steam也不能用了 :(