雖然今天遇到的不是一個有什么技術(shù)含量的問題憔购,但是國內(nèi)做這塊的人太少了焦匈,覺得還是需要多分享分享赘淮,至少可以幫助新人走一些彎路辕录,_
前幾天手賤升級了 macOS Sierra,本來看到 Intellij IDEA 在 macOS Sierra 下面只有一個觸摸板異常靈活的問題梢卸,覺得自己觸摸板用地比較少就直接升級了走诞,哪知道升級以后,在開發(fā)我們自己的 Intellij IDEA 插件的時候低剔,啟動的 IDEA 一會兒就出現(xiàn)了 Crash 的問題(Crash 的是通過 Intellij IDEA 啟動起來的用來測試插件的 Intellij IDEA)速梗。具體的 Crash 截圖如下:
本來想是不是要直接回到 OS X Yosemite肮塞,但是不甘心啊,覺得既然都已經(jīng)升級了姻锁,那遇到問題就解決吧枕赵,幸好在 Jetbrains 官方的問題跟蹤平臺上看到了有了提了類似的問題:https://youtrack.jetbrains.com/oauth?state=%2Fissue%2FJRE-3
看這個帖子的意思是這個問題是 OpenJDK 的 Bug,于是順藤摸瓜找到了 Jetbrains 在自己維護(hù)的 JDK 上對這個問題 Fix 的 Commit:
https://github.com/JetBrains/jdk8u_jdk/commit/02f9a5fbb4924ff67c8a04c15e490acfcc750003
如果把運(yùn)行插件 SDK 的 JDK 換成 Jetbrains 自己的 JDK位隶,應(yīng)該就可以解決問題拷窜。當(dāng)然,要使用 Jetbrains 自家的 JDK涧黄,不用拿著源代碼自己 Build篮昧,可以直接從這里下載對應(yīng)的 Build:https://bintray.com/jetbrains/intellij-jdk
下載過來以后在插件工程的「Project Structure」配置界面進(jìn)行如下配置即可:
- 將下載過來的 JDK 增加到 SDK 里面。
- 找到當(dāng)前正在用來運(yùn)行插件的插件 SDK笋妥,將其以依賴的 JDK 修改成剛剛增加的 JDK懊昨。
至此問題就已經(jīng)解決,在這里建議大家如果要開發(fā) Intellij IDEA 的插件的話春宣,還是用 Jetbrains 自家的 JDK 比較好酵颁,畢竟 Jetbrains 已經(jīng)在 OpenJDK 的基礎(chǔ)上 Fix 了不少的問題,特別是很多和 Swing 相關(guān)的問題月帝,使用他們的 JDK 可以幫助我們少走不少彎路躏惋。
PS:如果有人對開發(fā)工具、插件感興趣嚷辅,歡迎留言聯(lián)系我簿姨,螞蟻金服需要最優(yōu)秀的工程師來做研發(fā)工具,提升工程師的效率簸搞。