XCode getting “target specifies product type '

2019-01-21 19:19发布

问题:

When running my project in XCode, my tests gives this error:

target specifies product type 'com.apple.product-type.bundle.unit-test', but there's no such product type for the 'iphoneos' platform

It happened after a couple of XCode updates. Does anyone know how to fix this?

回答1:

It looks like Xcode 6 changed the product identifier for ocunit test bundles from com.apple.product-type.bundle to com.apple.product-type.bundle.ocunit-test.

Edit $(ProjectName).xcodeproj/project.pbxproj and replace any instance of com.apple.product-type.bundle.ocunit-test with com.apple.product-type.bundle. For now you will need to do this any time you open your project with Xcode 6 and then want to open it in Xcode 5.



回答2:

What Worked for me was:

  1. Delete the launchScreen.storyboard (Move to trash).
  2. Create a new launchScreen.storyboard..From File -> new File ->iOS User Interface -> LaunchScreen (I named the same AND! checked marked for all the targets at the bottom)
  3. Change Deployment Target from 9.1 which is the one I created my project with to 8.3 (this was done for the project and the targets)
  4. Up to this point I was still getting the same error
  5. I just deleted ProjectNameUITest from this section in Xcode picture here