在Xcode 4之前,build是在我的项目的根文件夹中创建的。 我再也找不到它了。

我在哪里可以找到构建文件夹?


当前回答

我自己也这么想。我发现在文件(菜单)下有一个项目“项目设置”。它会打开一个有3个选项的对话框:“默认位置”、“项目相对位置”和“自定义位置”。“项目相对位置”将构建产品放在项目文件夹中,就像以前一样。这不在Preferences菜单中,必须在每次创建项目时设置。希望这能有所帮助。

其他回答

Xcode构建文件夹

工作空间

默认情况下,生成位置在派生数据中。

请注意:如果在开发过程中删除DerivedData并重新构建,则可以更改产品的路径。

Xcode -> Preferences... -> Locations 

您可以更改“构建位置”的位置。它会对整个工作空间产生影响

File -> Project/Workspace Settings... -> Advanced 

目标

CONFIGURATION_BUILD_DIR

如果你想为目标创建一个自主构建位置,你可以更改位置:

Xcode v11及以上版本

Add User-Defined Setting -> CONFIGURATION_BUILD_DIR

v11前Xcode

Project editor -> select a target -> Build Settings -> Per-configuration Build Products Path (CONFIGURATION_BUILD_DIR) 

//default value
$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)

你可以得到下一个错误[关于]

Command CodeSign failed with a nonzero exit code

我自己也这么想。我发现在文件(菜单)下有一个项目“项目设置”。它会打开一个有3个选项的对话框:“默认位置”、“项目相对位置”和“自定义位置”。“项目相对位置”将构建产品放在项目文件夹中,就像以前一样。这不在Preferences菜单中,必须在每次创建项目时设置。希望这能有所帮助。

~/Library/Developer/Xcode/DerivedData现在是默认的。 你可以在Xcode中设置prefs来允许项目指定它们的构建目录。

您可以使用项目设置更改构建目录,但这些设置似乎没有保存在共享设置中,因此很难将它们放入源代码控制中,这使得创建自动构建(首先从源代码控制中获取所有内容)变得困难。

我的解决方案:向项目添加脚本,将构建的文件复制到任何你喜欢的地方。在Xcode中选择目标(这些说明适用于Xcode 12):单击左上角的文件图标打开项目导航器,然后单击Xcode图标旁边的项目名称,然后单击右边窗格中的目标。现在点击Build Phases选项卡,然后点击小加号,然后点击“New Run Script Phase”。

你可以输入一个脚本,应该是这样的:

cp -R ${BUILT_PRODUCTS_DIR}/MyProduct.framework ${PROJECT_DIR}/MyProduct.framework

这个例子是一个框架项目,因此它将整个框架目录复制到项目目录(您的.xcodeproj文件所在的目录)。现在,当您使用xcodebuild在命令行上构建时,所构建的产品将位于一个已知的位置。

配置XCode项目设置,它可以解决你的问题。