Android Studio 自定义目录后无法安装插件的分析与解决

从Android Studio(以下简称AS) 0.9版本开始一直追到现在的2.1 preview1,从某个版本开始出现了这个问题。因为几乎没有影响就没有理会,早上选了个时间排查了这个问题。

环境

  • IDE: Android Studio 2.1 preview1
  • OS: Windows 10 x64

现象

修改了AS配置文件目录后安装插件,重启后插件未显示安装,也无法使用。

分析

分析得出AS中安装插件流程

  1. 首先在${idea.system.path}/plugins目录下生成action.script和对应插件的jar或压缩包。
  2. 重启过程中根据action.script内容解压或移动插件jar到${idea.plugins.path}/目录下。
  3. 修改${idea.config.path}/options/options.xml文件中的
    ``` ``` 的value字段。
  4. 删除1中产生的action.script和插件文件。

** 但是在更改目录后,安装插件流程1中生成的script文件正常,也能在重启后正确执行流程3,但是流程2解压或移动插件文件与流程4删除相关文件没有执行。**

原因与解决

初步判断可能存在写权限的问题,导致无法创建文件和删除,估计在某个版本会修复。

** 临时解决办法可以在安装插件后重启下AS,再手动复制插件的相关jar或者解压插件压缩包后复制插件jar到${idea.plugins.path}/目录下之后删除 {idea.system.path}/plugins目录下文件再次重启AS即可正常使用插件。**