agvtool 报告“找不到 Foo.xcodeproj/../NO”
agvtool is reporting “Cannot find Foo.xcodeproj/../NO”
我使用 agvtool
来增加我的版本号。在我最近重构的 Xcode 13.0 (13A233) 项目中,出现了一个奇怪的错误:
Cannot find "Foo.xcodeproj/../NO"
例如
% agvtool next-version -all
Setting version of project Foo to:
108.
Also setting CFBundleVersion key (assuming it exists)
Updating CFBundleVersion in Info.plist(s)...
Updated CFBundleVersion in "Foo.xcodeproj/../Foo/Support files/Environments/QA/Info.plist" to 108
Updated CFBundleVersion in "Foo.xcodeproj/../FooKit/Info.plist" to 108
Updated CFBundleVersion in "Foo.xcodeproj/../FooTests/Info.plist" to 108
Cannot find "Foo.xcodeproj/../NO"
我只有这三个目标,Foo
、FooKit
和 FooTests
,但它正在寻找另一个名为 NO
的目标。
我环顾四周,没有看到任何无关的 Info.plist
文件。我猜测 .pbxproj
或 Info.plist
中设置了 NO
的东西 agvtool
被错误地选为潜在目标,但我还没有弄清楚它在哪里。 -all
选项如何精确地确定哪些 Info.plist
文件需要更新?
我的 work-around 是将我的各种 Info.plist
文件中的“捆绑版本”设置为 $(CURRENT_PROJECT_VERSION)
:
那么我根本不需要使用 -all
选项。我只是:
% agvtool next-version
Setting version of project Foo to:
126.
.plist
文件将从目标中获取版本,而不是在各自的文件中单独指定。这避免了 -all
选项的奇怪 behavior/bug。
我使用 agvtool
来增加我的版本号。在我最近重构的 Xcode 13.0 (13A233) 项目中,出现了一个奇怪的错误:
Cannot find "Foo.xcodeproj/../NO"
例如
% agvtool next-version -all
Setting version of project Foo to:
108.
Also setting CFBundleVersion key (assuming it exists)
Updating CFBundleVersion in Info.plist(s)...
Updated CFBundleVersion in "Foo.xcodeproj/../Foo/Support files/Environments/QA/Info.plist" to 108
Updated CFBundleVersion in "Foo.xcodeproj/../FooKit/Info.plist" to 108
Updated CFBundleVersion in "Foo.xcodeproj/../FooTests/Info.plist" to 108
Cannot find "Foo.xcodeproj/../NO"
我只有这三个目标,Foo
、FooKit
和 FooTests
,但它正在寻找另一个名为 NO
的目标。
我环顾四周,没有看到任何无关的 Info.plist
文件。我猜测 .pbxproj
或 Info.plist
中设置了 NO
的东西 agvtool
被错误地选为潜在目标,但我还没有弄清楚它在哪里。 -all
选项如何精确地确定哪些 Info.plist
文件需要更新?
我的 work-around 是将我的各种 Info.plist
文件中的“捆绑版本”设置为 $(CURRENT_PROJECT_VERSION)
:
那么我根本不需要使用 -all
选项。我只是:
% agvtool next-version
Setting version of project Foo to:
126.
.plist
文件将从目标中获取版本,而不是在各自的文件中单独指定。这避免了 -all
选项的奇怪 behavior/bug。