找不到"$(SRCROOT)agvtool | increment_build_number | Fastlane

Ale*_*ews 11 xcode plist ios fastlane

与Fastlane中的increment_build_number插件关联的avgtool返回错误.

当我increment_build_number在Fastlane 跑步时,我得到了

Updating CFBundleVersion in Info.plist(s)...

$(SRCROOT)/Info.plist
Cannot find "$(SRCROOT)/Info.plist"
Run Code Online (Sandbox Code Playgroud)

问题的原因是avgtool无法识别$(SRCROOT)

找到的解决方案之一是将Xcode设置中Info.plist的路径更新为绝对路径.

由于有许多开发人员正在处理此项目,因此使用绝对路径(对plist)更新项目设置将影响其他人构建项目.

有没有其他方法可以解决这个问题?

jos*_*ltz 14

您问题的当前解决方案是从您的构建设置中删除$(SRCROOT).$(SRCROOT)的意思是".xcodeproj所在的目录",所以你可以完全删除它(Xcode仍然会从.xcodeproj中查找它).

我们最近从get_version_number动作中移除了agvtool (在版本2.87.0中支持使用xcodeprojgem,我们可以更好地处理找到的目标,处理$(SRCROOT),并删除"avgtool设置过程".我将继续更换agvtool in increment_build_numberget_build_number很快就应该有希望阻止像这样的进一步问题.


Hir*_*iro 5

You can open the project setting and find the key INFOPLIST_FILE

  • INFOPLIST_FILE = "$(SRCROOT)/ProjectName-info.plist";

然后删除,$(SRCROOT)确保更改Xcode之后仍找到您的信息列表

新值可能是:

  • INFOPLIST_FILE = "/ProjectName-info.plist";

  • INFOPLIST_FILE = "/MyProjectFolderName/ProjectName-info.plist";

  • 我必须跳过第一个 / 才能使其正常工作。 (3认同)