你的位置:首页 > 操作系统

[操作系统]关于环境变量失效的问题


  前两天弄了个自动配置JDK环境变量的小工具(详情:http://www.cnblogs.com/chr-wonder/p/5208541.html)。在调试过程中发现了一些小问题。在此做以记录。

  在写入Path环境变量过程中,由于我是在Path变量的末尾添加新项的,所以为了避免和原有的项冲突(或者说粘连),在我插入的项的最前端插入了一个;(分号),以分隔新的项。但是,在写入了Path变量后,Path变量并未生效。这让我很纳闷。

  首先我考虑到,是不是因为我写在了用户环境变量中。我迅速否决了这个想法,因为用户环境变量,和系统环境变量(对当前用户来说)有相同的作用。

  然后我考虑到,是否是需要重启。但是其他环境变量都生效了,唯独Path不起作用。不死心,重启后再次测试,Path依旧没有生效。

  最后,我仔细检查了我所插入的环境变量。发现 由于我所测试的系统是刚安装的新系统,在我写入环境变量前,用户环境变量中并没有Path变量。所以我所修改过的Path变量就成了:";%JAVA_HOME%……" 这样以;(分号)开头。在我删除分号之后,Path变量正常生效。

  在我进行了一些测试之后,发现 Path变量以;(分号)开头,会导致Path变量失效。至此找到了环境变量失效的源头。

  为什么Path变量以;(分号)开头就会失效,我暂时也不明白,只是从测试中得到这样一个现象(也不排除是个例)。如果有谁知道,请不吝赐教,感激不尽。要是有什么相关问题,也请留言,互相学习,么么哒(づ ̄ 3 ̄)づ。