How to recreate a deleted target?

前端 未结 2 2006
再見小時候
再見小時候 2021-01-14 15:43

I have deleted my application target and now all my Build option are gone. I cannot run my project because I am missing a target. How can I regenerate it?

相关标签:
2条回答
  • 2021-01-14 16:12

    If restoring from a backup or a repository is not an option, and your bundle has many resources, I'd recommend starting a new XCode project from scratch and importing the source files and resources into it.

    1. Create a new Xcode project of the same type and info as your project.
    2. Delete this new project's ViewController and AppDelegate source files, copy your source files into the new project's folder, then import them into the Xcode project.
    3. Add any frameworks you've used.
    4. Import the resources (images, sounds, plists, etc) into the project.

    It might take longer than recreating a target and adding things to it, but you're less likely to make mistakes along the way, and you'll ensure that everything is properly added to the target.

    0 讨论(0)
  • 2021-01-14 16:28

    You have two options.

    The first is DarkDust's suggestion: restore from a backup or an SCM repository if you have them. If you have neither, you must admit you were begging for trouble.

    The second is unfortunate but comes with a message of hope. Recreate the target from scratch. Select File > New > New Target from the main menu and select the appropriate target type (a Cocoa Mac OS X application, doc-based, or whatever). With the new target selected, click the Build Phases tab, expand the Compile Sources phase, and drag all your implementation files - .m (and .c and .mm if you have them) - into the list so they're compiled as part of this target. Expand the Link Binary with Libraries phase and add in any frameworks you use. Expand the Copy Bundle Resources phase and drag in your resources (including xibs, credits, InfoPlist.strings, your app icon, etc.). Don't forget to recreate any Copy Files build phases you might have set up manually (if you did, you'll already know how). That should do it. The message of hope I mentioned is that you're now familiar with what a target is and all it needs to build your product. It's actually a lot simpler than it appears.

    0 讨论(0)
提交回复
热议问题