在讀xJsnark論文代碼時需要使用配置MPS,記錄一下過程中遇到的問題和解決方案
一、 系統及配置
MacOS Mojave 10.14.6
在github上根據代碼的指引安裝MPS、git,并為MPS配置git,以便後續從github上clone代碼。附上連結:xJsnark。
整個指導還是比較清楚的,下載下傳MPS沒什麼好說的,選擇對應系統的版本。随後安裝git。都配置好以後,複制連結到
VCS -> Check out from Version Control -> Git -> Git Repository URL
(此處位置跟官網的介紹稍有不同,可能是系統的問題)。随後設定一個存放位址,點
Clone
即可。這個過程有些慢,有大機率會失敗,一般是網絡問題。如果報錯可以自行百度,方法還是很多的。(我就是多試了幾次,就成功了(🤦♀️))
二、 運作例子
根據官網的訓示,首先對
Language
包進行rebuild,随後就可以選擇一個例子
run class
了。但是在這裡我遇到了問題:報錯
Unsupported major.minor version 52.0
查了一下,這個錯誤是由于本地運作時jdk版本與之前編譯的jdk版本不同導緻的。由于本地jdk版本太低,無法運作。其中錯誤裡标注的52.0應該對照 jdk1.8 版本。首先檢查一下自己的電腦組態了哪些jdk:
ls /Library/Java/JavaVirtualMachines/
這裡,ls指令後面的位址是mac系統預設存放java的位址,在這個檔案夾裡會儲存着本電腦所有的jdk:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL1ITOyMzNygTMzAzMwAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
像我的電腦就有兩個版本:1.6.0.jdk 和 1.8.0_73
下一步檢查一下自己的電腦目前使用的jdk是哪一個:
java -version
可以看到,我的電腦目前的預設jdk已經是1.8了
那麼就要檢查使用的軟體是否選用了系統預設的jdk進行build。首先看一下
MPS -> Preference -> Build, Execution, Deployment -> Java Compiler
将Project bytecode version修改為對應的版本1.8
随後在
Run -> Edit Configuration -> Java Application -> <對應的要運作的class>
中,勾選Use alternative JRE,點選最後的小框框,選擇對應的jre檔案夾路徑(如下圖,是預設路徑,mac一般不會有差別)
點選
OK
,就好啦~!