在读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
,就好啦~!