xcode, 这么多年了, 依旧是个粪坑. ai时代, 粪坑却越来越多了.
遥想当年, vb1横空出世(不是反讽, alan cooper确实厉害), 惊艳无数, 微软开始发力, 搞出了大粪坑vs, 苹果不甘落后搞出了超级粪坑xcode, 已拖拉拽的名义, 让大家用儿童玩具工具开发各种军工产品, 拖拉拽在搞复杂项目时, 苦不堪言.

苹果在给程序员添堵这件事, 永远值得信任
  • 莫名的, 会打开很久之前的app版本, 即便各种删除之后, macos依旧顽强的打开辣个版本…..
# 用这个命令找到keydog的相关进程. keydog就是那个幽灵app的名字, 此时幽灵app需要时启动状态
ps -ef | grep keydog 
  501 43470     1   0 12:02下午 ??         0:00.21 /Users/bergman/Library/Developer/Xcode/Archives/2025-08-26/keydog 2025-8-26, 10.14.xcarchive/Submissions/11AA4F6B-98BC-467E-8394-5ECBF95A9AEB/keydog.app/Contents/MacOS/keydog
  501 43480 43315   0 12:03下午 ttys011    0:00.00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn --exclude-dir=.idea --exclude-dir=.tox keydog
# 然后用那个进程号, 找app
➜  ~ lsof -p 43470 | grep "\.app"
keydog  43470 bergman  txt    REG   1,13    161616           173718905 /Users/bergman/Library/Developer/Xcode/Archives/2025-08-26/keydog 2025-8-26, 10.14.xcarchive/Submissions/11AA4F6B-98BC-467E-8394-5ECBF95A9AEB/keydog.app/Contents/MacOS/keydog
keydog  43470 bergman  txt    REG   1,13  13090816           180021389 /private/var/folders/cm/rz590ndn521cb7bgr_5xql800000gn/0/com.apple.LaunchServices.dv/com.apple.LaunchServices-6291460-v2.csstore
keydog  43470 bergman  txt    REG   1,13    139224           180021013 /private/var/folders/cm/rz590ndn521cb7bgr_5xql800000gn/C/cn.isuyu.keydog/com.apple.IntlDataCache.le.kbdx
keydog  43470 bergman  txt    REG   1,13     14855 1152921500312192145 /System/Library/Input Methods/SCIM.app/Contents/PlugIns/SCIM_Extension.appex/Contents/Resources/InfoPlist.loctable

也就是说, 我们要清理所有这些目录, 才能干掉自己开发过的app的版本

  • finder的application, 或者任何你到处app的位置.
  • xcode的编译目录
  • /Users/bergman/Library/Developer/Xcode/Archives/

这其中前两个位置好找:

  1. 用cmd+space呼出spotlight,
  2. 搜索你的app例如keydog,
  3. 然后alt+cmd+鼠标单击, 就能打开对应搜索结果的位置.

但是, 第三个位置, spotlight也不知道…….