following pods are integrated into targets that do not have the same Swift version

后端 未结 6 880

I am updating my project to Swift 3. When updating some of my cocoapods to swift 3, I receive the following message in terminal, after running pod install:

          


        
相关标签:
6条回答
  • 2021-01-17 08:58

    For CocoaPods App v.1.1.1 this problem was solved by setting Use legacy Swift Language Version to Unspecified in Build Settings section for all targets.

    Probably it's an app bug - all targets had the same settings but CocoaPods app complaining only about one of them.

    UPD: to be able to compile project I had to change it back from Unspecified to No

    0 讨论(0)
  • 2021-01-17 09:02

    I just solved a recent issue when I updated my swift3 project to swift4 one with Xcode9, the problem said: [!] The following pods are integrated into targets that do not have the same Swift version:

    Appsee required by MyApp (Swift 4.0), MyAppUnitTest (Swift 3.0) ...Allpods

    My solution was: With my main target MyApp with the swift version at 4.0, I also updated my UnitTest version to 4.0 into Build Settings --> Swift Language Version

    0 讨论(0)
  • 2021-01-17 09:04

    I have solved the problem like this:

    1. I had two targets: the main project and the tests targets.
    2. My main project's target had the 'Use legacy Swift Language version' (in Build Settings) to 'Unspecified (3.0)'.
    3. I set the 'Use legacy Swift Language version' to 'No' and it worked fine.
    0 讨论(0)
  • 2021-01-17 09:06

    This problem gets worse with Xcode 9 since it supports both 3.2 and 4.0 swift versions, but Cocoa Pods doesn't support this yet:

    [!] The following pods are integrated into targets that do not have the same Swift version:
    - XCGLogger required by target1 (Swift 4.0), target2 (Swift 3.0)
    

    Workaround: switch target1 to swift 3.2 temporarily, install cocoa pods, then switch it back to swift 4.0.

    0 讨论(0)
  • 2021-01-17 09:10

    I had the problem with one target with a difference from 3.0 to 3.0.1

    I solved it by manually editing the project file (project.pbxproj) and change 3.0; with 3.0.1;

    0 讨论(0)
  • 2021-01-17 09:12

    When I opened my xcodeproj file it displayed 3.2, but when I ran git diff, I noticed that the project.pbxproj had everything as Swift 3.0.

    Manually updating the SWIFT_VERSION variables to 3.2 with a text editor solved the discrepancy.

    I recommend this as a last resort only!

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