一直在使用VS Code来编写和运行Julia程序。
可是,自从VS Code的Julia扩展(Extension)升级到1.4.0版后,直到目前最新的1.5.6版本,都无法启动Julia。错误提示“julia.executablePath”设置不正确,需要重新设置(如下图)。就是说,指向julia.exe的路径设定不正确。
但实际上,julia.exe的路径设定是正确的。想到会不会是路径格式问题。于是试着将“\”改为“\\”或“/”,或是在路径外增加引号,但都无法解决问题。
到论坛、GitHub上寻求帮助,也没有答案。有朋友建议将Julia扩展降低版本使用。这倒是可以暂时解决,将Julia扩展降级到1.3.34版后,Julia可以在VS Code中启用。
本来以为这个问题能随着Julia扩展的进一步升级得到解决,可直到最近的1.5.6版,也还是存在同样的问题。作为“强迫症”患者,自己实在觉得这个不太容易忍受,于是再次寻找问题所在及解决方案。
先是尝试看GitHub上VS Code Julia扩展相关的源码,想找出些端倪,不过并未找到问题所在。
又尝试着在VS Code安装目录下,看看是否有Julia扩展相关的配置文件,想是不是可以直接修改相关配置文件,使julia.exe的路径设定可以起作用。也没有成功找到这个相关的配置文件。
突然一转念,想到既然是1.3.34版本可以正常使用,1.4.0版开始出现的问题,那看看1.4.0版和1.3.34版之间的差异,会不会能够找到问题呢?
在VS Code Julia扩展的文档主页(https://www.julia-vscode.org/docs/stable/)下的“Change Log”查找,发现了一点儿线索,与executablePath有关(如下图)。
顺着#2379这个链接,看到了关于这个更改的相关讨论及内容,是对“package.json”文件中的内容进行了更改。
于是,查找文件“package.json”,它是位于当前用户目录下的。以1.5.6版Julia扩展为例,具体位置是“C:\Users\当前用户名\.vscode\extensions\julialang.language-julia-1.5.6\package.json”。
打开“package.json”(如下图),参照此前所看到的内容更改,将“configuration”–>“julia.executablePath”–>“scope”的原值”machine-overridable”改为“machine”,即改回为1.3.34版本中的值。
重新启动VS Code,Julia可以运行,路径错误的问题总算得以解决了。
没有深究“configuration”–>“julia.executablePath”–>“scope”的对应值具体含义,所以暂时还不清楚问题的根本原因,只是将问题解决了而已。
另外,这个路径错误问题,我只在Windows中遇到,在Mac中从未出现。也暂时没有深究原因。也许什么时候有空,再去研究一下。
|