Несколько команд вызывают ошибку - Cocoapods несколько целей и платформ

Я создаю приложение для iOS, которое хочу обновить с помощью новейших ярлыков Siri, все работает нормально при сборке на устройстве и тестировании, но при архивировании возникают ошибки.

Это ошибка, которую я получаю:

error: Multiple commands produce '/Users/tomspee/Library/Developer/Xcode/DerivedData/Company-hhmrvgkwkpelmlewuxvhclfggdtc/Build/Intermediates.noindex/ArchiveIntermediates/Company/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/Alamofire.framework':
1) Target 'Alamofire-iOS12.0' has create directory command with output '/Users/tomspee/Library/Developer/Xcode/DerivedData/Company-hhmrvgkwkpelmlewuxvhclfggdtc/Build/Intermediates.noindex/ArchiveIntermediates/Company/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/Alamofire.framework'
2) Target 'Alamofire-iOS10.0' has create directory command with output '/Users/tomspee/Library/Developer/Xcode/DerivedData/Company-hhmrvgkwkpelmlewuxvhclfggdtc/Build/Intermediates.noindex/ArchiveIntermediates/Company/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/Alamofire.framework'

У меня есть 4 таких ошибки, все выглядят одинаково, но для разных подов.

Наличие нескольких платформ объяснимо тем, что основная платформа проекта начинается с iOS 10.0, но для намерения Siri Shortcuts Intent и Intent UI мне нужно использовать платформу iOS 12.0. Тем не менее, это, кажется, создает проблему.

Это мой подфайл:

source 'https://github.com/CocoaPods/Specs.git'
source 'https://bitbucket.org/company/company-specs.git'

def sharedPods
  pod 'Alamofire'
  pod 'AlamofireObjectMapper'
  pod 'KeychainSwift'
  pod 'ObjectMapper'
end

target 'Project' do
    platform :ios, '10.0'

    use_frameworks!

    sharedPods

    pod 'AlignedCollectionViewFlowLayout', :git => 'https://github.com/mischa-hildebrand/AlignedCollectionViewFlowLayout.git'
    pod 'Crashlytics'
    pod 'Charts', '3.0.4'
    pod 'Device.swift'
    pod 'Fabric'
    pod 'Firebase/Core'
    pod 'Firebase/Messaging'
    pod 'ImageSlideshow', '~> 1.3'
    pod 'Kanna', :git => 'https://github.com/tid-kijyun/Kanna.git', :branch => 'feature/v4.0.0'
    pod 'MagicalRecord', '2.3.2'
    pod 'CompanySupportLib', '1.1.3'
    pod 'Starscream'
    pod 'SwiftSVG', '~> 2.0'
    pod 'VPAttributedFormat', '1.2.5'
    pod 'youtube-ios-player-helper', '0.1.6'

    target 'ProjectTests' do
        inherit! :search_paths

        pod 'Firebase'
    end
end

target 'Project WatchOS Extension' do
    platform :'watchos', '3.0'

    use_frameworks!

    sharedPods
end

target 'Project Today' do
    platform :ios, '10.0'

    use_frameworks!

    sharedPods
end

target 'Project Intent' do
    platform :ios, '12.0'

    use_frameworks!

    sharedPods
end

target 'Project IntentUI' do
    platform :ios, '12.0'

    use_frameworks!

    sharedPods
end

target 'Project Own Framework' do
    platform :ios, '10.0'

    use_frameworks!

    sharedPods
end

post_install do |installer_representation|
    installer_representation.pods_project.targets.each do |target|
        target.build_configurations.each do |config|
            config.build_settings['ONLY_ACTIVE_ARCH'] = 'NO'
            config.build_settings['SWIFT_VERSION'] = '4.0'
            if config.build_settings['SDKROOT'] == 'watchos'  
              config.build_settings['WATCHOS_DEPLOYMENT_TARGET'] = '4.0'  
            end
        end
    end
end  

person Tom Spee    schedule 23.10.2018    source источник


Ответы (1)


Я обнаружил, что для Siri Shortcuts цели Intents & IntentsUI не требуют platform :ios, '12.0', поэтому, когда я изменил это на platform :ios, '10.0', он удалил повторяющиеся цели фреймворков, и проблема с архивированием была исправлена.

person Tom Spee    schedule 24.10.2018