programing

Xcode 10 오류: 여러 명령이 생성됩니다.

easyjava 2023. 4. 29. 09:58
반응형

Xcode 10 오류: 여러 명령이 생성됩니다.

오류: 여러 명령이 '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbfczehjsawtebkimvwx/Build/Products/Debug-iphoneos/OptimpitalLive.app/Info.plist': 1) 대상 'OptimateLiveLive'에는 '사용자/Us/Us/Us/Us/Us/Us/Us/Us/Usr/D'plist' to '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimalLive-fxatvygbfczehjsawtebkimvwx/빌드/Products/Debug-iphoneos/OptimpitalLive.app/Info.plist' 2) 대상 'OptimateLiveLiveLiveLive'에는 '/Us/Us/Us/Us/Us/Us/Us/Us/Us/Us'plist' to '/Users/uesr/Library/Developer/Xcode/DerivedData/OptimLive-fxatvygbfczehjsawtebkimvwx/빌드/Products/Debug-iphoneos/OptimLiveLive.app/Info.plist' 3) 대상 'Optimit'에는 '/Us/Usr/Desktop/Us/Us/Us/Desktop/SEALive/Live/Live/Live/

Xcode 9에서 코드를 실행하면 작동하지만 Xcode 10에서 오류가 발생합니다.

이 문제는 앱 내의 여러 Plist 또는 다른 파일로 인해 발생할 수 있습니다.

솔루션 -> 대상 열기 -> 빌드 단계 > 번들 리소스 복사 및 제거info.plist거기서부터

여기에 이미지 설명 입력

참고: 만약 당신이 시계 앱을 개발했다면, 당신은 시계와 시계 확장판에서도 플리스를 제거해야 할 것입니다.

이 답변은 더 이상 사용되지 않습니다. Xcode 12는 레거시 빌드 시스템을 더 이상 사용하지 않습니다. 이후 릴리스에서 제거될 예정입니다.

Xcode 10 빌드 시스템에 동일한 문제가 있는 다른 사용자를 위해 이 빌드 오류에 대한 해결책을 찾았습니다. 다음 단계에 따라 수정하십시오.

  1. Xcode에서 File->Project/Workspace 설정으로 이동합니다.
  2. 빌드 시스템을 레거시 빌드 시스템으로 변경합니다.

여기에 이미지 설명 입력 이것은 새로운 Xcode 10의 빌드 문제를 해결할 수 있습니다.

새 빌드 시스템으로 작업하려면 이 Apple Xcode 도움말 페이지에서 문제 해결 도움말을 찾을 수 있습니다.

Xcode -> File -> Workspace Settings로 이동합니다.여러분은 이런 팝업을 발견됩니다.

여기에 이미지 설명 입력

시스템 빌드 태그에서 "레거시 시스템 빌드"를 선택합니다.완료를 누릅니다.

참고:- "cmd+shift+alt+k" 및 "파생 데이터"를 사용하여 프로젝트를 삭제합니다.

프로젝트를 구축하면 매력적으로 작동할 것입니다 :)

저는 코어 데이터로 실험하고 있었습니다.간단한 체크리스트 프로그램을 위한 데이터 모델을 구축하고 NSManagedObjects를 생성했습니다.프로젝트를 컴파일할 때 다음 오류가 발생했습니다.

error: Multiple commands produce '/Users/myUSerName/Library/Developer/Xcode/DerivedData/myCoreDateExperiment-gzbslaqdwglkzxemijpdqmizgyzc/Build/Intermediates.noindex/ myCoreDateExperiment /Debug-iphonesimulator/ myCoreDateExperiment.build/Objects-normal/x86_64/CheckListItem+CoreDataProperties.o':
1) Target ' myCoreDateExperiment ' (project ' myCoreDateExperiment ') has compile command for Swift source files
2) Target ' myCoreDateExperiment ' (project ' myCoreDateExperiment ') has compile command for Swift source files

문제는 데이터 모델(내 경우 CheckList.xcdatamodeld)이 "Compile Sources" 목록에 있다는 것이었습니다.제가 목록에서 제거했을 때 프로젝트가 정리되었습니다.

  1. 프로젝트 탐색기를 열고 프로젝트를 선택합니다(맨 위의 첫 번째 항목).
  2. 프로젝트 및 대상 창의 대상에서 빌드 대상을 선택합니다.
  3. 상단 근처의 빌드 단계 옵션 선택
  4. 컴파일 소스 항목을 확장하고 데이터 모델 이름을 찾습니다.찾을 때 문제가 있으면 "xcdatamodeld"를 검색합니다.
  5. 컴파일 목록에서 모델 삭제
  6. 데이터 모델이 "Bundle Resources 복사" 목록에 포함되어 있는지 확인합니다.누락된 경우 추가합니다.

편집

@William T.주석에서 설명합니다. 컴파일 목록에 xcdatamodeld가 필요합니다.대신 xcdatamodeld 파일 내의 엔티티로 이동합니다.오류가 발생한 모델을 선택하고 왼쪽 패널을 확장한 다음 "코드젠" 필드를 "수동/없음"으로 변경합니다.

이 답변은 더 이상 사용되지 않습니다. XCode 12는 레거시 빌드 시스템을 더 이상 사용하지 않습니다. 이후 릴리즈에서 이 시스템을 제거할 예정입니다.

이것도 한번 해보세요.Xcode->파일->프로젝트 설정->빌드시스템->레거시빌드시스템.

만약 당신이 이것을로부터 얻고 있다면.Ditto이름의 를 여러 개 the 일이다인를스여개명는령생하아성님러은음동름한스턴의다▁creating▁of▁the▁command)'copy files' build phase), , , 를해야 할 수도 Product Module Name.

  1. Xcode에서 불만을 제기하는 대상을 클릭
  2. Build Settings
  3. Product Module Name
  4. 이름을 고유한 이름으로 변경

우리 앱에는 감시 대상과 몇 가지 알림 대상이 있기 때문에, 저는 그냥 다음과 같은 것들을 넣었습니다.Extension모듈 이름 끝에 표시됩니다.

원래 이 솔루션을 찾은 곳은 https://forums.developer.apple.com/thread/103913 입니다.

코코아 포드를 사용하는 경우 포드의 통합을 해제하고 다시 설치해 볼 수도 있습니다.저한테는 효과가 있어요.

pod deintegrate

pod install

빌드 로그를 확인하는 동안 다음과 같은 경고가 표시되었습니다.

note: Using new build system
note: Planning build
note: Constructing build description
Build system information
warning: The Copy Bundle Resources build phase contains this target's Info.plist file '/Users/<redacted>/Repositories/Whitesmith/optimize-ios/Carthage/Checkouts/WSStatusBarNotification/Miscellaneous/Info.plist'. (in target 'JDStatusBarNotification')

그렇다면 목표를 찾아보십시오.

  1. 빌드 단계
  2. 번들 리소스 복사
  3. 제다한을 합니다.info.plist.

오류 메시지가 핵심 데이터 파일을 참조하는 경우 이 답변 읽기

개요:자동으로 생성된 코어 데이터 관리 개체 클래스 파일과 수동으로 생성된 코어 데이터 관리 개체 클래스 파일이 모두 있을 수 있습니다.

이 답변은 오류의 첫 번째 줄이 Foo+CoreDataProperties.o 또는 Foo+CoreDataClass.o 파일을 참조하는 경우에 적용됩니다.예:

error: Multiple commands produce '/Users/me/Library/Developer/Xcode/DerivedData/MyApp-uebslaqdwgldkjemijpdqmizgyzc/Build/Intermediates.noindex/ MyApp /Debug-iphonesimulator/ MyApp.build/Objects-normal/x86_64/Foo+CoreDataProperties.o':

1) Target ' MyApp ' (project ' MyApp ') has compile command for Swift source files

2) Target ' MyApp ' (project ' MyApp ') has compile command for Swift source files

근본 원인은 빌드 스크립트의 Compile Swift Source Files 섹션을 확장하여 확인할 수 있습니다.예:

<unknown>:0: error: filename "Address+CoreDataClass.swift" used twice: '/Users/myUserName/Projects/Jnky/Foo+CoreDataProperties' and '/Users/jk/myUserName/Developer/Xcode/DerivedData/MyApp-uebslaqdwgldkjemijpdqmizgyzc/Build/Intermediates.noindex/MyApp.build/Debug/MyApp.build/DerivedSources/CoreDataGenerated/Jnky/Foo+CoreDataProperties.swift'

언급된 첫 번째 파일은 프로젝트 디렉터리에 있는 소스 파일로, 누군가가 프로젝트 탐색기에서 데이터 모델을 선택하고 메뉴 편집기 > 관리되는 개체 하위 클래스를 클릭하여 생성했습니다.이 기능은 Xcode 7 정도에 추가되었습니다.

의 Xcode에 .DerivedData이 파일은 데이터 모델이 다음과 같은 경우 빌드할 마다 Xcode에 의해 자동으로 생성됩니다..xcdatamodeld) 파일이 대상의 컴파일 소스 빌드 단계에 포함되어 있습니다.이 기능은 Xcode 9 정도에 추가되었습니다.Codegen 팝업 설정에 따라 각 엔티티/클래스에 대해 하나 또는 두 개의 파일이 생성됩니다.데이터 모델을 편집하는 동안 엔티티를 선택하면 해당 팝업이 데이터 모델 검사기에 표시됩니다.

데이터 모델 검사기 스크린샷

설정은 다음과 같습니다.

  • 수동/없음 파일이 생성되지 않습니다.
  • Category/Extension Objective-Category 또는 Swift 확장자를 포함하는 Foo+CoreDataProperties.m 또는 .swift 파일이 하나 생성됩니다.
  • 클래스 정의 동일한 카테고리/확장 파일이 생성되고, 클래스 선언 및 정의가 포함된 Foo+CoreDataClass.m 또는 .swift가 생성됩니다.

따라서 이전의 Xcode에 익숙한 개발자(나와 같은)가 새로운 Xcode로 프로젝트를 시작할 때 문제가 발생한다는 것을 알 수 있습니다.Codegen 팝업의 설정으로 인해 Xcode가 중복 파일을 생성한다는 것을 깨닫지 못하는 반면, 우리는 Create Managed Object Subclass 메뉴 항목을 사용하여 Project Navigator에서 볼 수 있는 파일을 생성해야 합니다. 이것은 Apple이 Project Navigator에 "명석하게" 표시하지 않습니다.// 이 파일자동으로 생성되었으므로 편집할 수 없습니다.

솔루션 1 - 이전 방식 사용

다음과 같은 한 가지 설정만으로 데이터 모델에 대한 모든 자동 Codegen을 비활성화할 수 있습니다.

  • 문제 대상의 빌드 단계를 엽니다(Project Navigator에서 프로젝트를 선택한 다음 나타나는 대상 목록에서 문제 대상을 선택하고 빌드 단계를 탭합니다).
  • Compile Sources 항목을 확장하고 문제 데이터 모델을 찾습니다(.xcdatamodeld
  • 컴파일 목록에서 삭제
  • 데이터 모델이 번들 리소스 복사 목록에 포함되어 있는지 확인합니다.

솔루션 2 - 초보자를 위한 핵심 데이터 매직

여기, 당신은 새로운 방법으로 올인합니다.

  • 데이터 모델을 해당 소스 컴파일에 그대로 둡니다.
  • 데이터 모델의 각 Entity Inspector에서 Codegen을 Class Definition으로 설정합니다.
  • Project Navigator에서 Foo+CoreDataClass 파일을 삭제하고 휴지통에 버리고 Foo+CoreDataProperties.m 또는 .swift 파일의 이름을 Foo+MyProperties와 같은 이름으로 변경합니다.
  • Foo+MyProperties.m 또는 .swift 파일에 Xcode에 의해 생성된 속성이 있으면 Codegen에 의해 생성된 숨겨진 파일에 있으므로 이러한 속성을 삭제합니다.

이 솔루션을 사용하면 각 빌드의 데이터 모델에서 클래스 정의가 자동으로 생성됩니다.당신은 그들을 볼 수도 없습니다.초보자에게 좋고 간단한 코어 데이터 매직입니다.

솔루션 3 - 대부분의 실제 애플리케이션용

그러나 관리되지 않는 속성을 추가하려는 경우에는 솔루션 2가 좋지 않습니다. (Objective-C는 범주에 속성을 추가할 수 없으며, Swift는 저장된 속성을 확장에 추가할 수 없습니다.)따라서 대부분의 실제 애플리케이션에서는 솔루션 1과 솔루션 2 사이의 중간 정도를 선택해야 할 것입니다.

  • 컴파일 소스 목록에 데이터 모델 유지
  • 데이터 모델의 각 Entity Inspector에서 Codegen을 Category/Extension으로 설정합니다.
  • Project Navigator에서 Foo+CoreDataClass.m 또는 .swift 파일을 삭제하고 휴지통에 버리십시오. 이후의 혼란을 줄이려면 Foo+CoreDataProperties.m 또는 .swift 파일의 이름을 Foo.m 또는 .swift 파일로 변경하십시오.
  • Foo.m 또는 .swift 파일에 관리되지 않는 고유 속성을 추가할 수 있는 클래스 정의가 포함되어 있는지 확인합니다.

(Positron의 답변에 대한 감사의 표시)여기서 저의 답변은 Positron의 답변(나의 솔루션 1)이 작동하는 이유를 설명하고 솔루션 2와 솔루션 3을 추가합니다.)

1 해결책 1:
대상 ➼ 빌드 단계 ➼ 번들 리소스 복사 ➼ 여기서 info.plist 제거를 엽니다.◦ 확장에서 플리스터도 제거해야 합니다(있는 경우).

2 솔루션 2:
코코아 포드를 사용하는 경우 포드의 통합을 해제하고 다시 설치해 볼 수도 있습니다.명령:

1) pod deintegrate
2) pod install

3 기본 제공 3:
Xcode 파일 ➼ Project/Workspace settings 이동합니다로에서▁x다로니▁project▁file에/▁settings이서work➼.
◦ 빌드 시스템을 기존 빌드 시스템으로 변경합니다.

저도 같은 문제가 있었습니다. 메인 앱에 도우미 앱이 하나 더 있어서 리소스에 복사했습니다.제 경우에는 다음과 같이 해결됩니다.

Target -> 2) Build Phase 2) Copy File (n개 항목) 3) Copy File 제거.

도우미 앱은 Xcode 10.0으로 자동 복사됩니다.

여기에 이미지 설명 입력

사용해 보세요. 효과가 있습니다.

Xcode에서 File->Project/Workspace 설정으로 이동합니다.

빌드 시스템을 레거시 빌드 시스템으로 변경합니다.

여기서 제안된 해결책은 저에게 효과가 없었습니다.이것은 특히 코코아 포드 때문이었습니다.저는 이전에 Cocoapods 1.3.1을 사용했습니다.1.5.3으로 업그레이드하는 것만으로는 문제가 바로 해결되지 않았습니다.

제가 수행한 단계는 다음과 같습니다.

  1. Podfile.lock을 삭제합니다.
  2. 포드 디렉터리 삭제
  3. 파생 데이터 삭제 및 치료
  4. Xcode 종료
  5. 코코아 포드를 1.5.3으로 업데이트
  6. 려달을 합니다.pod install
  7. 워크스페이스 및 빌드 열기

제 문제를 해결한 한 가지 옵션은 빌드 시스템을 레거시 빌드 시스템으로 변경하는 것입니다.Xcode 10+의 다음 단계를 따르십시오.

여기에 문제와 그 해결책에 대한 자세한 기사를 작성했습니다.Xcode 오류: 여러 명령이 생성됩니다.

여기에 이미지 설명 입력

여기에 이미지 설명 입력

제 경우 PDF Generator가 info.plist 파일을 생성하던 중에 삭제했습니다.

여기에 이미지 설명 입력

이 답변은 더 이상 사용되지 않습니다. Xcode 12는 레거시 빌드 시스템을 더 이상 사용하지 않습니다. 이후 릴리스에서 제거될 예정입니다.

Xcode 11.4 오래된 프로젝트를 빌드할 수 없습니다.

Xcode => File => Project Settings => Build System => 레거시 Build System

여기에 이미지 설명 입력

여기에 이미지 설명 입력

이 오류가 표시되는 몇 가지 이유가 있습니다.

1 - 프로젝트 이름이 프로젝트에 사용된 종속성과 동일합니다.

중 할 때 이 할 수 . 를 들어 " 예들 선수 할없 프는 종로 사동 프트 이로 젝수 름있 다습 니선 을할발 때생오 이를가 할류택용어 한일하에택는속중트젝하나성와▁this다▁may▁choose▁that▁error니▁cannot▁you▁example▁happen▁whenencies있습▁you수▁for▁that▁for▁a예▁project▁project▁name▁your▁choose를▁on할▁one▁the▁the▁of발▁depend▁is▁as때이생오들어▁use▁same가선류▁theFirebaseAuth또는GoogleSignIn포드 또는 SPM을 통해 사용하는 경우 프로젝트 이름으로 사용됩니다.

이 문제를 해결하려면 다음 방법으로 프로젝트 이름을 변경해야 합니다.

프젝트선에서 합니다.project navigator사이드바에서 합니다.file inspector->Identity and Type->name오른쪽 사이드바에서.

여기에 이미지 설명 입력

변경한 후 XCode는 모든 상대 대상을 변경하라는 메시지를 표시하고 이름 바꾸기를 누릅니다.

여기에 이미지 설명 입력

2 - Copy Bundle resources 부분에 중복된 info.plist

info가 info.plist에 되면 이 할 수 .Copy Bundle resources 않는 양식을 합니다.project navigator -> go to -> 상대선택동 -> 이동>Build Phases 탭 ->Copy Bundle Resourcesinfo같이 합니다.

여기에 이미지 설명 입력

3-pod 파일이 제대로 작동하지 않음

때때로 예기치 않은 이유로 사용하는 종속성이 중단되기 때문에 이 오류가 발생합니다.

1 - Podfile.lock을 삭제합니다.

2 - 포드 디렉터리 삭제

- Data & (이 디렉터리는 3 - Delete Derived Data & Clean (3 - Delete Derived Data & Clean)에서 수 .XCode 메뉴 ->Preferences...->Locations->Derived Data주소 오른쪽에 있는 화살표 아이콘을 클릭하여 디렉토리로 이동합니다.)

4 - Xcode 종료

5 - 다음을 사용하여 코코아 포드 업데이트[sudo] gem install cocoapods Mac에서

- 하여 6 - 터미널의로디리이실렉다행니합동여하토프로트젝을 실행합니다.pod install

7 - 워크스페이스 및 빌드 열기

5-중복 코어 데이터

프로젝트에서 핵심 데이터를 사용할 때 이 문제에 직면할 수 있습니다.

먼저 coreData codegen 유형을 설명하겠습니다.

여기에 이미지 설명 입력

** 클래스 정의: ** Core Data에서 생성하는 관리 개체 하위 클래스 및 속성 파일의 속성이나 기능을 편집할 필요가 없는 경우 클래스 정의를 선택합니다.

범주/확장:Category/Extension(카테고리/확장)을 선택하여 관리되는 개체 하위 클래스 내에 편의성 메서드 또는 비즈니스 로직을 추가합니다.

수동/없음:수동/없음을 선택하여 관리 개체 하위 클래스의 속성을 편집합니다. 예를 들어, 액세스 수정자를 변경하고 추가 편의 메서드 또는 비즈니스 로직을 추가합니다.

다음을 선택합니다.Manual/None이 xcmodel에 확인합니다.CopyBundleRecources그것을 제거합니다.

여기에 이미지 설명 입력

시작하기 전에 제 프로젝트가 카르타고를 종속 관리자로 활용한다는 것을 알아두십시오.

여기에 있는 기존의 답변 중 어떤 것도 제 문제를 해결하지 못했습니다.제가 이 문제를 해결한 것은 다음과 같습니다.

먼저 빌드 오류가 특히 하나의 프레임워크를 가리켰다는 것을 알게 되었습니다.그런 다음 해당 프레임워크에 대해 App Target > Build Phases를 필터링했습니다.저는 그 프레임워크가 "라이브러리를 사용한 이진 링크"와 "임베디드 프레임워크" 모두에 존재한다는 것을 알게 되었습니다."임베디드 프레임워크"에 나열된 프레임워크 중 카르타고가 관리하는 프레임워크가 없다는 점에 주목하여, 나는 문제의 프레임워크를 "임베디드 프레임워크"에서 제거했습니다.그런 다음 프로젝트를 다시 구축하여 문제의 프레임워크에서 지원하는 기능을 포함하여 모든 것이 정상적으로 작동합니다.

이 문제는 SDK의 Fabric suite의 두 번째 부분을 앱에 추가한 후에 발생했습니다.

실제로 일어난 일은 Google Utilies Framework가 포드 프로젝트에 두 번 추가되었다는 것입니다.

Google Utilities.framework용 항목 2개

Xcode 10 이전에는 괜찮았지만 파일에 두 가지 작업(이 경우 복사 작업)이 있으면 Xcode 10에서 불만을 제기합니다.

두 번째 프레임워크를 제거하는 것이 안전합니다.

제 경우에는:

이름이 같은 두 개의 파일을 만들면 에서 이 오류를 트리거합니다.최근에 추가한 항목을 제거하면 이 문제가 해결됩니다.

이게 도움이 되길 바랍니다.

불행하게도 이 대답들 중 어떤 것도 저에게 효과가 없었습니다.내가 본 오류는 다음과 같습니다.

"여러 명령을 사용하면 '/Users/.../.../.../Frameworks/abcdef'가 생성됩니다.프레임워크"

  1. 이 명령은 명령에 따라 다릅니다...스크립트 단계 "
  2. 이 명령은 명령에 따라 다릅니다...스크립트 단계 "

이 행을 포드 파일에 추가하고 "포드 설치"를 수행하는 것이 유일하게 효과가 있었습니다.

install! 'cocoapods', :disable_input_output_paths => true

이것이 누군가에게 도움이 되기를 바랍니다.저는 이것을 고치려고 몇 시간을 보냈고 마침내 그것을 얻었습니다.

가끔은 Xcode가 IntelliJ / Android Studio만큼 효율적이었으면 좋겠어요 :(

행운을 빕니다.

같은 이름의 파일이 두 개의 다른 대상에 있을 때 이 문제가 발생했습니다.어떤 이유에서인지 그 파일들 중 하나가 두 대상의 일부를 가지고 있었습니다.기본적으로 저는 두 개의 파일을 가지고 있었습니다.그리고 그 두 파일은 모두 하나의 목표물에 속했습니다.

대상에는 대상당 하나의 파일 이름만 있을 수 있으므로 기본 대상과 관련이 없는 파일에 대한 대상 구성원 상자의 선택을 취소하는 것만으로도 문제가 해결되었습니다.

내 실수는:

중복 출력 파일

'/Users/home/Library/Developer/Xcode/DerivedData/myAppName-fawptgabysjowicvpeqydjniuovo/Build/Products/Debug-iphoneos/myAppName.app/GoogleMaps.bundle' 작업:PhaseScript 실행 [CP] CopyPods 리소스 /Users/home/Library/Developer/Xcode/파생 데이터/myAppName-fawptgabysjowicvpeqydjniuovo/Build/Intermediates.noindex/myAppName.빌드/디버그-iphoneos/myAppName.빌드/스크립트-32CCC25BF727B592A1784900.

나는 문제 파일이 있는 것에 초점을 맞췄습니다.GoogleMaps.bundle그리고 는 그고그파위가치에 .[CP] Copy Pods Resources도.output file 표시했습니다의 네 입니다.

먼저 프로젝트의 복사본을 만들고 해당 복사본에 대해 다음 단계를 먼저 수행하십시오.

1 - 프로젝트 탐색기에서 파란색 프로젝트 아이콘으로 이동했습니다.

여기에 이미지 설명 입력

2 - 빌드 단계를 선택합니다.

여기에 이미지 설명 입력

에서 3 - 선한빌드단을 합니다.[CP] Copy Pods Resources

여기에 이미지 설명 입력

- 4세 미만 - 더언[CP] Copy Pods Resources다녀왔습니다Output Files 그 에서 저는 그고그아저파찾는일다았니로 끝나는 했습니다.GoogleMaps.bundle선택하고 빼기 기호를 눌러 삭제했습니다.입력 파일이 아닌 출력 파일로 이동해야 합니다.

여기에 이미지 설명 입력

5- 청소를 했습니다shift+cmmd+k 나중에 때 . ㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅠㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜㅜ

이상한 것은 빨간색 오류가 사라졌지만 노란색 경고는 여전히 있었지만 작동했다는 것입니다:)

핵심 데이터에 문제가 있는 경우 이 답변을 제공합니다.파일 이름으로 이동합니다.xcdatamodeld 및 모든 엔티티에 수동/없음 코드젠이 있는지 확인합니다.여기에 이미지 설명 입력

그래서 제가 안고 있던 문제는 프로젝트 설정 -> 빌드 단계 -> 대상에 대한 번들 리소스 복사에 Info.plist를 실수로 포함시켰다는 것입니다.

단계:

  1. Xcode 파일로 이동
  2. WorkSpace 설정을 클릭합니다.
  3. 레거시 빌드 시스템으로 빌드 시스템 선택

다음은 다른 작동 솔루션입니다. (사용자 지정 포드를 사용하는 경우)

  • 사이드바에서 "Pods"를 스크린샷의 하이라이트로 선택합니다.
  • 빌드 단계를 클릭합니다."헤더" 섹션을 펼칩니다.Public, Private, Project 세 가지 옵션이 있습니다.
  • Public(공용)을 확장하고 중복된 파일이 있는지 확인합니다.제거합니다.완료!!

여기에 이미지 설명 입력

많이 먹었어요.Multiple commands produce경고 - 하나의 대상에서 info.plist 복제로 제한되지 않습니다.현지화된 리소스 및 문자열 파일, 헤더 등을 포함합니다.

해결 방법: 대상 구성원 자격의 모든 중복 항목을 제거합니다.

이 옵션을 모두 사용해 보십시오. 이 3가지 옵션 중 어느 것이든 확실히 당신을 위해 작동할 것입니다.

Option 1: Remove all files from

대상 >> 빌드 단계 >> 소스 컴파일

대상 >> 빌드 단계 >> 번들 리소스 복사

Option 2: Change the build system

Xcode->파일->프로젝트 설정->빌드시스템->레거시빌드시스템

Option 3: remove and update existing pod

정리 파일 ObjC
클린 지음지음지음지음지음지음지음지음지음지음지음지음지음지음지음지음지음지음지음
cd [your_project_dll]
Podsrm -rf 드포/
rm Podfile.lock
update 포드트이업데

I hope this will help you, Happy coding :-)

Project Build Phase로 이동하고 컴파일 소스에서 Remove info.plist를 선택합니다.그러면 해당 문제가 제거되고 프로젝트가 다시 활성화됩니다.

여기에 이미지 설명 입력

언급URL : https://stackoverflow.com/questions/50718018/xcode-10-error-multiple-commands-produce

반응형