ChatGPT解决这个技术问题 Extra ChatGPT

Warning: The Copy Bundle Resources build phase contains this target's Info.plist file

I've separated a project into two builds and given each of them a plist file. Everything works fine, but I keep getting this build warning:

Warning: The Copy Bundle Resources build phase contains this target's Info.plist file 'MyApp-Info.plist'

I get this when I try to build MyApp. Building for the second target gives the same error (with SecondTarget-Info.plist in the warning). I'm not sure why it's a warning, since I want the build to contain that .plist file. Each of the .plist files have one target membership (for their own build).

What does this warning mean? Is there any way to make it go away?

You don't need to add Info.plist to each target. Instead in each target Build Setting -> Packaging -> Info.plist File -> the location to the target Info.plist

C
Community

https://developer.apple.com/library/content/qa/qa1649/_index.html

Excerpt:

You are getting this warning because you probably added your Info.plist file to your Copy Bundle Resources build phase as shown in Figure

https://i.stack.imgur.com/lbt07.png

The INFOPLIST_FILE build setting specifies the name of the Info.plist associated with your target. When building a target, Xcode reads this build setting and copies the referenced Info.plist into your application bundle. Because Xcode automatically processes the Info.plist, you should not add it to your Copy Bundle Resources build phase or make it a target member. To resolve this warning, select your Info.plist from the Copy Bundle Resource build phase as shown in Figure 1, then click the Remove (–) button to delete it from the phase.


What problem will be caused if this didn't get solved?
@hasan83, you will get the build warning, and the built product will contain an extra copy of Info.plist taking up a little space.
@kraftydevil, does your project have any subprojects, so that the warning might be referring to a target other than the one you examined?
Still relevant, 7 years later.
The solution worked for me on Xcode 9. @jungledev still relevant because Apple is busy updating Swift versions rather than developing Xcode to show us the solution for the weird errors of weird numbers all the time.
B
Buchannon

To fix in xcode 4:

1) Remove the reference to your info.plist file by selecting it and hitting delete.

2) Add the info.plist file again but choose no destination and uncheck the "add to targets" option.


I see now that NOT unchecking "add to targets" when copying the plist file in to my project was the reason I got this problem. To fix the problem, I followed the steps in the "correct answer" above though deleting and re-adding without adding to targets would have worked as well. =)
This worked for me in Xcode 6.4. The selected answer did not.
Looks like in the newest version of the XCode there is no such option like no destination or add to targets. The only option I see is to the the file without any addition option.
OutStanding ...... uncheck the "add to targets" option.
M
Marc

In case anyone runs into this with Xcode 3, to fix it click on the .plist file in the left column under "Groups and Files", and in the upper right area, uncheck the box next to the .plist file's name in the column under the bullseye icon. You'll need the editor zoomed out (View -> Zoom Editor Out) to show the checkboxes.


C
CrazyOne

Another solution is:

You might have accidentally removed a project file from the "target membership" core data.

Select your Main.storyboard from the project navigator on the left Go to the "file inspector" (first tab) on the right Find the "Target Membership" list Enable the check box Give it a little time to process, but while your at it, also check the LaunchScreen.storyboard, .xcdatamodelid, Assets.xcassets, and all .swift files in your project. They should all have been enabled for target membership. Note: the Info.plist should not have the target membership checked enabled.

Hope this helps.


c
ce-loco

For me, this was related to this ionic framework post

The only difference was that I changed the

CODE_SIGN_IDENTITY = iPhone Distribution
CODE_SIGN_IDENTITY[sdk=iphoneos*] = iPhone Distribution

to

CODE_SIGN_IDENTITY = Apple Development
CODE_SIGN_IDENTITY[sdk=iphoneos*] = Apple Development

instead of "iPhone Developer" as described in the post, as per Xcode's own suggestion. Also, I am using cordova not ionic. If you are too, this file is located in platforms/ios/cordova/build-release.xconfig

ps: remember to have your project's signing settings as automatic (even unckecking/checking it again helps)


S
StuFF mc

Just as a note... I'm gonna try to write a nice Radar about it, but it's really weird the way Localization is handled in Storyboards in Xcode. If you ask "Show in Finder", you won't see your .storyboard file selected but instead its containing folder. I think it has to do with Localisation of the Storyboard. As soon as I changed that from English to German (and thus not having the file anymore in either root or en.lproj), I started to have trouble.