这个问题网上有很多解释的,但是看了一下照着做的时候还是有不少坑,于是我就决定研究一下,也有的网友回答的是正确的,但是大都没有解释出现这样的原因,于是后造成许多人迷迷糊糊,即便是解决了,最后也不知道是什么原因,那么接下来我就给大家分享一下自己的经历吧,我想你看了之后以后就知道该怎么看命令行上的说明了。
首先根据提示,我们首先要明白问题所在,那么看命令行里的说明是怎么说的吧,进去看看吧
看到这个命令了吗,直接在命令行上输入man xcode-select
然后就跳到了xcode-select……命令说明页
首先我看到的是这句话,这句话的大概意思是xcode-select(后跟相应的不同指令,以短线-连接)是用来管理可用的开发目录和BSD工具的(至于说这个工具你用管他是干什么的),那么我往下看吧
先看描述
注意最后一句话,说的意思是xcode-select能够在不同的xcode版本间切换,意思是如果你在本地安装了不至一个xcode的话,需要你自己指定开发目录,这句话在下面这张图上更明显
看到了吧,如果你在本地装了不至一个xcode的话,你在使用命令行的话需要指定开发路径是哪个xcode下,最可恶的是这句话曾经误导了我,害了我搞了好久,没错,就是这句话:
xcode-select--switchpath/to/Xcode.app
我以为是直接xcode-select--switchpath后面再加上/to/Xcode.ap(自己理解的是Xcode.ap就是你自己的某个版本的Xcode,比如xcode7.3.app),等于说这个app写了两次,一次在路径path中,一次就是在/to/xcode.app,结果不对,那我只能往下看,最后发现了下面选项的解释:
没错,这些选项在整个指令操作过程中完整写法都是xcode-select +(-h或-s 或-p等等)我们看看-s
这个选项,我们会发现,这个选项的意思是说如何设置一个可用的开发路径,注意第二句话,他说这个指令要用到超级用户的权限,也就是sudo ,那么此时指定一个可用开发的路径的完整指令就应该是这样子了
sudoxcode-select —switch /path
如我自己的指令是这样的,sudoxcode-select --switch /Applications/Xcode7.3.app
这里有一个坑,你写的时候一定要注意!
没错,就是switch和路径之间一定要有一个空格,不然你怎么写都不对,此时开发路径就在xcode7.3下面了,如果你要看当前的开发路径是哪个,那么可以看这个选项:
没错,很简单如下输入即可:
出来了吧,至于说我们在指定路径时为什么没有写全,没有这样写
sudo code-select —switch/Applications/Xcode7.3.app/Contents/Developer
那是因为文档上已经说清楚了,如下:
文档上说,内容路径会自动推测出给你补全,至此,算是整个问题的解决的思路,希望会为你进行指令操作产生点思考。