我有一个用于xcode构建的python脚本。它的一部分如下所示。在
cmd = "xcodebuild -verbose -configuration Release -workspace".split()
cmd += [PROJECT_WORKSPACE_FOLE_NAME_PATH]
cmd += "-scheme".split()
cmd += [scheme]
cmd += "CONFIGURATION_BUILD_DIR =".split()
cmd += [APP_OUTPUT_DIRECTORY]
cmd += "CODE_SIGN_IDENTITY =".split()
cmd += [DEVELOPER_ID]
cmd += "OTHER_CODE_SIGN_FLAGS = ".split()
cmd += [--keychain, TEAMCITY_KEYCHAIN_PATH]
subprocess.call(cmd)
这给了我一个错误。在
^{pr2}$请帮帮我。在
编辑:下面给出了等效的bash脚本
xcodebuild -verbose -configuration Release -workspace "$PROJECT_WORKSPACE_FILENAME_PATH" -scheme "$SCHEME" CONFIGURATION_BUILD_DIR="$APP_OUTPUT_DIR" CODE_SIGN_IDENTITY="$DEVELOPER_ID" OTHER_CODE_SIGN_FLAGS="--keychain $TEAMCITY_RUN_SCRIPT_LOCATION/$TEAMCITY_KEYCHAIN"
最大的问题是你传递的设置错误。如果您查看^{} 手册页,可以看到它们是作为单个参数
setting=value
传递的。例如,在您的(工作)bash示例中,其中一个参数是:但是在Python代码中,您将其作为四个独立的参数传递:}的值。在
OTHER_CODE_SIGN_FLAGS
,=
,keychain
,以及{这不是一回事。显然,}视为一个它一无所知的标志,这就是您得到错误的原因。在
xcodebuild
正在将OTHER_CODE_SIGN_FLAGS
、=
和路径解释为有效的(但可能不是您想要的),但它将{解决方案是构建一个参数,就像您在
^{pr2}$bash
中所做的那样。而不是这样:这样做:
但你在其他场合都犯了同样的错误。我也不会惊讶,如果有其他论点你传递错了。所以,仅仅修复这一个错误并不能让所有的事情都神奇地工作;你必须修复所有的错误。在
相关问题 更多 >
编程相关推荐