用于更改 Xcode DerivedData 位置的命令行选项
Command line option to change Xcode DerivedData location
我知道使用 Xcode 更改 DerivedData
位置的方法(Preferences->Locations->DerivedData..)。
然而,我尝试构建的 Mac 位于远程位置,只能通过 ssh 访问。我想构建一个特定的项目,我想在其中保留 DerivedData 相对于项目的位置。
每当我使用 xcodebuild
构建项目时,文件最终会在 /Users/builduser/Library/Developer/Xcode/DerivedData
下生成,但我希望它们在 '$PROJECT/target/DerivedData'
下
什么命令行相当于通过 XCode 更改 DerivedData 位置设置?
Xcode UI 的 DerivedData 设置通过 -derivedDataPath
参数传递给 xcodebuild
。来自 man xcodebuild
:
-derivedDataPath path
Overrides the folder that should be used for derived data when performing a build action on a scheme in a workspace.
虽然不清楚更改 DerivedData 路径的目标是什么,但您应该知道,您可以在应用的构建配置中调整一些额外的设置,以影响最终构建的部署位置。构建的阶段之一是 install
阶段,它可以将最终工件移到别处。可以在 'Deployment' 构建设置组下找到控制这些行为的设置。请参阅 DSTROOT
、INSTALL_PATH
和 DEPLOYMENT_LOCATION
,了解可能有助于重新组织产品部署位置的其他选项。
您可能应该在项目基础上设置它,但是如果您需要更改 Xcode 默认值而不去 UI:
~/Library/Preferences/com.apple.dt.Xcode.plist
下有一个plist文件
您可以通过PlistBuddy查看和更改内容:
/usr/libexec/PlistBuddy -c print ~/Library/Preferences/com.apple.dt.Xcode.plist
and you can see the field:
IDECustomDerivedDataLocation = DerivedData
如果没有设置,您可以使用 PlistBuddy 添加:
/usr/libexec/PlistBuddy -c "Add IDECustomDerivedDataLocation string DerivedData" ~/Library/Preferences/com.apple.dt.Xcode.plist
我知道使用 Xcode 更改 DerivedData
位置的方法(Preferences->Locations->DerivedData..)。
然而,我尝试构建的 Mac 位于远程位置,只能通过 ssh 访问。我想构建一个特定的项目,我想在其中保留 DerivedData 相对于项目的位置。
每当我使用 xcodebuild
构建项目时,文件最终会在 /Users/builduser/Library/Developer/Xcode/DerivedData
下生成,但我希望它们在 '$PROJECT/target/DerivedData'
什么命令行相当于通过 XCode 更改 DerivedData 位置设置?
Xcode UI 的 DerivedData 设置通过 -derivedDataPath
参数传递给 xcodebuild
。来自 man xcodebuild
:
-derivedDataPath path
Overrides the folder that should be used for derived data when performing a build action on a scheme in a workspace.
虽然不清楚更改 DerivedData 路径的目标是什么,但您应该知道,您可以在应用的构建配置中调整一些额外的设置,以影响最终构建的部署位置。构建的阶段之一是 install
阶段,它可以将最终工件移到别处。可以在 'Deployment' 构建设置组下找到控制这些行为的设置。请参阅 DSTROOT
、INSTALL_PATH
和 DEPLOYMENT_LOCATION
,了解可能有助于重新组织产品部署位置的其他选项。
您可能应该在项目基础上设置它,但是如果您需要更改 Xcode 默认值而不去 UI:
~/Library/Preferences/com.apple.dt.Xcode.plist
下有一个plist文件您可以通过PlistBuddy查看和更改内容:
/usr/libexec/PlistBuddy -c print ~/Library/Preferences/com.apple.dt.Xcode.plist and you can see the field: IDECustomDerivedDataLocation = DerivedData
如果没有设置,您可以使用 PlistBuddy 添加:
/usr/libexec/PlistBuddy -c "Add IDECustomDerivedDataLocation string DerivedData" ~/Library/Preferences/com.apple.dt.Xcode.plist