Không thể tạo kho lưu trữ ứng dụng iOS trong xcode


175

Tôi gặp sự cố khi tạo kho lưu trữ Ứng dụng iOS từ một ứng dụng. Ứng dụng biên dịch tốt và thậm chí hoạt động trong trình giả lập. Bây giờ tôi muốn thực hiện một số thử nghiệm đặc biệt và không thể tạo Lưu trữ ứng dụng iOS. Khi tôi nhấp vào Sản phẩm -> Lưu trữ, nó sẽ tạo một kho lưu trữ xcode chung. Ai giúp tôi với. Tôi nên đề cập rằng tôi đã tạo Lưu trữ ứng dụng iOS của ứng dụng này. Nó chỉ dừng lại để tạo Lưu trữ iOS vì một số lý do. Cảm ơn rất nhiều.


7
Mặc dù câu hỏi là về việc tạo kho lưu trữ từ xcode, tôi đã gặp phải vấn đề này khi sử dụng xcodebuild. Giải pháp là chỉ định đích:xcodebuild -destination generic/platform=iOS
db42

Cảm ơn @ db42, đã làm điều đó!
fabb

1
bạn có thể giải thích về độ phân giải - bạn thực hiện thay đổi ở đâu?
jlo-gmail

Nếu bạn có bất kỳ tệp .xcodeproj nào trong Dự án> Mục tiêu> Giai đoạn xây dựng> phụ thuộc mục tiêu, hãy xóa tệp đó khỏi đó và sau đó xây dựng ipa của bạn. Nó làm việc cho tôi. Chúc mừng
Kalpesh Panchasara

Câu trả lời:


316

Kiểm tra cài đặt bản dựng:

  1. Bỏ qua cài đặt là KHÔNG cho mục tiêu dự án chính
  2. Bỏ qua cài đặt là CÓ cho các mục tiêu khung (dự án phụ)
  3. Trong Giai đoạn xây dựng cho các dự án phụ, Tiêu đề sao chép cần phải nằm trong Dự án, không phải Công khai (không áp dụng nếu xây dựng thư viện tĩnh)
  4. Thư mục cài đặt trong Triển khai là hợp lệ (ví dụ: / Ứng dụng)

2
Đây là câu trả lời đầy đủ nhất kết hợp các câu trả lời một phần ở trên. Cảm ơn Alex L! Tôi nghĩ rằng đây nên là câu trả lời được lựa chọn cho câu hỏi này.
Brandon

3
Là một câu hỏi meta, làm thế nào bạn tìm ra điều này? Có vẻ như tôi dựa vào Stackoverflow cho tất cả các câu hỏi liên quan đến bản dựng của tôi.
philipkd

4
Xinh đẹp! Tôi nghĩ rằng đây là một vấn đề với việc cung cấp hồ sơ, nhưng điều này làm việc rất tốt. Dự án phụ là nhánh mapbox của tuyến-me / MapView. Copy Headers là chìa khóa như bài viết dưới đây, nó có thể được tìm thấy trong Build Phase của dự án phụ.
RCarver

7
# 3 đã khắc phục sự cố của tôi nhưng tôi cũng cần chuyển các tệp từ Riêng sang Dự án trước khi kho lưu trữ của tôi được xây dựng dưới dạng Lưu trữ Ứng dụng iOS.
Thomas Hajcak

4
Về mặt kỹ thuật, vấn đề không phải là các tiêu đề là Công khai trong Sao chép Tiêu đề, đó là Cài đặt Xây dựng> Đường dẫn Thư mục Tiêu đề Công cộng được đặt thành mặc định /usr/local/include. Nếu bạn đang xây dựng một thư viện tĩnh, các tiêu đề phải là Công khai, vì vậy sẽ đúng hơn nếu # 3 thay đổi Đường dẫn thư mục tiêu đề công cộng thành một cái gì đó hợp lý hơn include/$(TARGET_NAME). @CopperCash lưu ý điều này trong một câu trả lời dưới đây.
bcattle

75

Điều này có thể xảy ra nếu bạn đã thêm khung / thư viện ... bạn cần chỉnh sửa Target-> Build Settings của thư viện đó và đặt cài đặt 'Skip Install' thành 'Có'. Khi bạn lưu trữ lại, XCode sẽ bắt đầu tạo lại 'Lưu trữ ứng dụng iOS' thay vì 'lưu trữ xcode chung'.


nhưng "Skip Install" không có sẵn trong xcode 4.4.1, ít nhất tôi không thể tìm thấy bỏ qua intall trong xcode của mình
Mashhadi

2
Điều tương tự áp dụng cho các gói được thêm vào.
Đánh dấu Horgan

62

Ngoài Skip Install to Yes và trong trường hợp bạn đã mở một dự án lib / framwork khác trong dự án ứng dụng của mình, bạn phải chuyển các tiêu đề (nếu có) từ công khai sang dự án trong Build Phase / Copy Header .

xây dựng giai đoạn của mục tiêu lib / framwork của bạn


3
Tôi sắp mất hy vọng, vì Skip Install to Yes không hoạt động với tôi. Sao chép tiêu đề vào Project đã giúp tôi. Cảm ơn!
ksm

10
Để giúp bạn bản địa hóa tiểu dự án Xcode bị lỗi, bạn có thể hiển thị Lưu trữ Xcode chung trong Finder và khám phá gói. Trong .xcarchive, bạn sẽ thấy các tiêu đề bị lỗi trong Sản phẩm / usr / local / bao gồm.
Monsieur Bắt đầu

1
Tại sao lại đặt một vài tệp để sao chép tiêu đề để công khai điều này?
mskw

mskw, tôi đoán nếu tạo phẩm được xây dựng có chứa một hoặc nhiều tiêu đề công khai thì nó không thể trở thành kho lưu trữ "có thể triển khai thiết bị" (Lưu trữ ứng dụng iOS từ nơi bạn tạo IPA). Nó vẫn là một kho lưu trữ dự án Xcode. Cảm ơn
ebtokyo

1
chết tiệt, cảm ơn, họ đã làm việc cho tôi .. Tôi tự hỏi làm thế quái nào bạn tìm được những giải pháp này :)
Fabio Napodano

45

Tôi đã làm như sau để làm cho nó hoạt động:

  1. Tôi đã có một thư viện tĩnh ba20, tôi đã sử dụng cocoapods để bao gồm các tệp trong dự án chính
  2. đã theo dõi cài đặt bỏ qua cho tất cả các dự án phụ / thư viện tĩnh khác và chuyển các tiêu đề sao chép từ công khai sang dự án như đã nêu ở trên
  3. quan trọng nhất: trong mỗi thư viện, dự án của bạn sử dụng để xây dựng các giai đoạn -> Sao chép tệp và đảm bảo rằng đích được thay đổi từ Absolute paththành products directory. Lưu ý: xem gợi ý bên dưới để thu hẹp tìm kiếm của bạn để tìm thư viện gây ra lỗi này.

và đó là nó!

gợi ý: để có ý tưởng về các tệp vi phạm khiến tệp lưu trữ của bạn tạo tệp lưu trữ thay vì ipa làm điều này:

  1. Chọn kho lưu trữ và nhấp vào nút Phân phối.
  2. Chọn tùy chọn 'Lưu sản phẩm được xây dựng'.
  3. Nhấn Next và Save.
  4. Duyệt thư mục đã tạo trong Finder.
  5. Thư mục con 'thư viện' sẽ xác định các thư viện mà bạn cần để đặt Cài đặt Bỏ qua thành Có.
  6. trong một số trường hợp usr/local/includesẽ xác định các tệp tiêu đề thủ phạm mà bạn cần chuyển từ Công khai sang Dự án hoặc các tệp mà bạn phải thay đổi từ đường dẫn tuyệt đối sang thư mục sản phẩm (hoặc thậm chí các tệp bạn quên đặt cờ cài đặt thành cờ có). nhưng thư mục đó (tức là usr / local / include) thay đổi tùy theo cấu trúc thư mục thư viện con của bạn. Trong nhiều trường hợp .. bạn sẽ thấy tất cả các tệp được liệt kê trong Sao chép tệp trong bước 3 ở trên được liệt kê ở đây. Nếu bạn tìm thấy chúng ở đây, thì bạn có một câu trả lời chắc chắn cho nguyên nhân của vấn đề của bạn.

cập nhật để gợi ý: để làm cho cuộc sống đơn giản hơn nữa .. bất kỳ tệp nào xuất hiện ở bước 4 trong gợi ý ở trên .. chỉ cần tìm kiếm nó trong tìm kiếm toàn cầu của xcode .. và bạn sẽ nhận được kết quả ngay lập tức cho những gì bạn muốn .. ví dụ: đây là nội dung của thư mục của tôi (làm theo các bước trong gợi ý ở trên):

nhập mô tả hình ảnh ở đây

Vì vậy, tôi có thể nói nó có cái gì để làm với cryptossl thư viện .. tìm kiếm chúng:

nhập mô tả hình ảnh ở đây

làm cho tôi nhận ra rằng tôi quên đặt bỏ qua cài đặt thành có.


Gợi ý tuyệt vời! Tôi đã thay đổi một số tiêu đề khung thành 'Riêng tư'; vì lý do nào đó, điều này đã khiến chúng bị sao chép ra ./usr/local/include.
Ben Mosher

1
luôn luôn là một niềm vui để có thể giúp đỡ @BenMosher :)
abbood

1
Câu trả lời tốt nhất tôi nhận được. Cảm ơn vì tiền boa, đã cứu ngày của tôi. !
neywen

Chắc chắn câu trả lời tôi đang tìm kiếm - tiết kiệm các sản phẩm xây dựng đã chỉ cho tôi nguyên nhân chính xác của vấn đề.
Dennis L

Câu trả lời mở rộng này với "Lưu sản phẩm được xây dựng" rất hữu ích - @abbood, rất cảm ơn bạn. Hy vọng tôi có thể trở lại ủng hộ một ngày nào đó.
Scott Corscadden

21

Nếu bạn xuất kho lưu trữ, hãy mở nó và xem /urs/local/includetrong Sản phẩm hãy thử đề xuất này :

Trong mỗi pod, dưới Packaging, Private Headers Folder PathPublic Headers Folder Pathđược thiết lập để /usr/local/include. Nếu tôi xóa chúng thì tôi nhận được một kho lưu trữ hợp lệ.

nhập mô tả hình ảnh ở đây

Đã làm việc cho tôi sau khi nâng cấp ứng dụng React Native của tôi lên 0.11.0, Xcode 7và CocoaPods 0.39.0.beta.4.


1
Tôi có thể xác nhận rằng điều này hoạt động! Miễn là bạn nhớ xóa cả đường dẫn tiêu đề riêng tư và công khai. Điều này cũng khá dễ dàng, nếu bạn chỉ cần chọn tất cả các nhóm, tìm kiếm đường dẫn tiêu đề, sau đó xóa tất cả chúng cùng một lúc.
DIDS

1
Tôi cũng có thể xác nhận rằng việc này hoạt động, giúp tôi tiết kiệm rất nhiều thời gian, điều này đã xảy ra khi tôi nâng cấp các nhóm của mình lên phiên bản 0.39.0.beta
Bryan P

Tuyệt vời. Làm việc cho tôi :) Tôi đã vật lộn từ 1 ngày rưỡi. Cảm ơn, Cảm ơn, Cảm ơn :) :) :)
Srikanth

Tôi nghĩ rằng đây là cái đã hoạt động cho tôi Xcode 7.0 iOS9. Tôi không có cocoapods, nhưng điều này đã khắc phục vấn đề không hơn không kém. Cảm ơn người đàn ông
Geoff H

Ngoài ra, tôi đã phải đặt SKIP_INSTALL thành Có trên tiện ích mở rộng WatchKit và ứng dụng của mình để ứng dụng này hoạt động.
tuyết

12

Nếu bạn đang sử dụng CocoaPods cũng như WatchKit hoặc Tiện ích mở rộng hôm nay, có một vấn đề mở trên repo của CocoaPods giải thích vấn đề của bạn có thể là gì.

Các giải pháp đối với tôi là để loại bỏ các Copy Pod Resourcesgiai đoạn từ mở rộng WatchKit và Hôm nay mở rộng mục tiêu dưới Build Phases. Dự án được biên soạn và lưu trữ như mong đợi khi tôi làm điều này.

Hy vọng điều này sẽ giúp được ai đó, điều này đã khiến tôi bối rối cả ngày!


1
@ Lewis42 luôn có thể thêm tiền thưởng;)
rebello95

Đừng thấy một tùy chọn, một cuộc bỏ phiếu lên bình luận của bạn sẽ phải làm;)
lewis

@ Lewis42 bạn phải thêm tiền thưởng vào câu hỏi và trao giải cho câu trả lời lol
rebello95

@ rebello95, anh bạn rock!
Matt

10

Nếu bất kỳ câu trả lời nào ở trên không hoạt động, vấn đề của bạn có lẽ là với cocoaPods. Bản cập nhật mới nhất 0.38.1làm mọi thứ rối tung lên với tôi, nhưng sau đó tôi đã hạ cấp xuống 0.37.1và mọi thứ trở lại bình thường. Sử dụngXcode 6.3.1

Chỉnh sửa sau: cập nhật lên 0.38.2cũng sẽ sửa lỗi này. Thông tin thêm về nguyên nhân gây ra sự cố này tại đây: Cocoapods 0.38.1 không thể tạo Lưu trữ hợp lệ


3
Tôi cập nhật 0.38.2và vẫn có vấn đề. Bạn có trên Xcode 7 không?
Porter Hoskins

@PorterHoskins Tôi vừa viết vấn đề này vì Xcode 7 sẽ KHÔNG xây dựng Lưu trữ hợp lệ từ cùng một dự án xây dựng kho lưu trữ hợp lệ trong Xcode 6 . Tôi đang sử dụng Cốc Cốc 0.38.2, khi sử dụng Xcode 6 thì mọi thứ đều ổn, nhưng với Xcode 7, kho lưu trữ không được tạo chính xác. Bạn đã kiểm tra cấu trúc thư mục của mình để xem bạn có tệp .appex bên ngoài .app trong gói không?
Gấu Bắc cực

Tôi có một khung tại /Library/Frameworks. Tôi nghĩ rằng nó có thể có liên quan đến vỏ ca cao của Google không được xây dựng như một khung năng động. Nghe có vẻ tương tự như github.com/CocoaPods/CocoaPods/issues/3889
Porter Hoskins

3
Tôi đã chuyển cho mọi tiêu đề nhóm trong Xây dựng giai đoạn / Tiêu đề đến phần dự án từ công chúng và nó đã hoạt động. Vì vậy, thực sự vấn đề có thể là ở CocoaPods.
Denis Kutlubaev

7

Mặc dù tôi đang sử dụng Xcode5 và những gì đã sắp xếp nó cho tôi là chỉnh sửa Lược đồ xây dựng - thử tất cả các đề xuất trên có thể áp dụng không giúp ích gì trong trường hợp của tôi.

Tôi đã có hai mục tiêu, nói, "Ứng dụng" và "Ứng dụng MIỄN PHÍ". Sự cố của tôi với kho lưu trữ chung xảy ra khi tôi đang cố gắng Lưu trữ phiên bản MIỄN PHÍ mà tôi đã thêm sau phiên bản 'bình thường' của ứng dụng. Trong trường hợp của tôi, khi tôi chọn Lược đồ của nó trên thanh công cụ và chọn Chỉnh sửa lược đồ ... Tôi thấy phần Xây dựng có hai mục tiêu, đó là Ứng dụng và Ứng dụng MIỄN PHÍ.

Tôi đã bỏ chọn tất cả các cột cho Ứng dụng, chỉ kiểm tra các cột của ứng dụng MIỄN PHÍ và nhấp vào OK. Lần tới khi tôi chọn Sản phẩm> Lưu trữ, tôi đã nhận được Ứng dụng MIỄN PHÍ thay vì Lưu trữ Chung. :)


7

Nếu bạn chỉ có một dự án duy nhất, có lẽ giải pháp này sẽ hữu ích. Vấn đề này đã xảy ra, khi tôi nhân đôi mục tiêu. Kết quả là tôi đã có hai mục tiêu được xây dựng song song. Điều này đã gây ra vấn đề. Lưu trữ IOS chung đã được xây dựng.

Để tắt song song xây dựng đi đến

  • Quản lý các chương trình,
  • Chỉnh sửa sơ đồ,
  • Xây dựng,
  • Loại bỏ các mục tiêu khác.

5

Tôi gặp vấn đề này sau khi cập nhật lên iOS 9 và Xcode 7. Giải pháp của Josh H đã làm việc cho tôi:

Trong mỗi nhóm, bên dưới Đóng gói, Đường dẫn thư mục tiêu đề riêng và Đường dẫn thư mục tiêu đề chung được đặt thành / usr / local / bao gồm. Nếu tôi xóa chúng thì tôi nhận được một kho lưu trữ hợp lệ.

Tôi cũng đã tạo một kịch bản cài đặt bài đăng cho Podfile của mình để thực hiện việc này một cách tự động!

    post_install do |installer_representation|
        installer_representation.pods_project.targets.each do |target|
            target.build_configurations.each do |config|
                config.build_settings['PUBLIC_HEADERS_FOLDER_PATH'] = [""];
                config.build_settings['PRIVATE_HEADERS_FOLDER_PATH'] = [""];
            end
        end
    end

Chỉ cần thêm nó vào dưới cùng của Podfile của bạn và chạy pod install


5

Tôi có nhiều dự án trong không gian làm việc của mình, (GTL, Pods và dự án chính của tôi) và đây là những gì làm việc cho tôi:

Chọn Dự án, sẽ có 2 loại ở đó, có Dự án và có Mục tiêu .

Đối với các dự án không phải là chính của bạn GTLhoặc PODS:

Dự án:

Skip Install = NO
Installation Directory = /Applications
// For pods
Private Headers Folder Path = ""
Public Headers Folder Path = ""

Mục tiêu:

Skip Install = YES
Installation Directory = /Applications
// For pods
Private Headers Folder Path = ""
Public Headers Folder Path = ""

Đối với dự án chính (thường được đặt tên giống như tên sản phẩm của bạn):

Dự án:

Skip Install = NO
Installation Directory = /Applications

Mục tiêu:

Skip Install = NO
Installation Directory = /Applications

Kiểm tra mục tiêu triển khai ios trên từng dự án và mục tiêu để đảm bảo tất cả chúng đều giống nhau.


Thanx để giải thích nó từng bước. điều đó thực sự giúp tôi giải quyết vấn đề của mình
Arslan

4

Tôi đã có vấn đề này. Trong trường hợp của tôi, nguyên nhân là do việc giữ mục tiêu ứng dụng Mac là phụ thuộc của ứng dụng iOS.

Lý do nó được thiết lập như thế này là vì ứng dụng Mac là một công cụ được sử dụng để tạo một số dữ liệu cho ứng dụng iOS, sau đó được bao gồm trong gói.

Tôi đã phải loại bỏ sự phụ thuộc đó và xây dựng công cụ riêng biệt trước khi tự xây dựng ứng dụng iOS.


Các thư viện như lippd đi kèm với cả mục tiêu ios và osx, tôi đã quên xóa mục tiêu osx ... doh
james_alvarez

4

Trong kịch bản của tôi, tôi đã nhận được "Lưu trữ chung" sai lầm chỉ sau khi tôi bắt đầu bao gồm mã Swift trong dự án Objective-C chủ yếu của mình. Sau rất nhiều lần khắc phục sự cố và kiểm tra tệp lưu trữ mà Xcode đã nhổ ra, tôi nhận thấy rằng SwiftSupportthư mục (với các dylib cần thiết cho thời gian chạy Swift) đã ở một nơi khác trong kho lưu trữ của tôi so với kho lưu trữ ứng dụng dự án Swift hoàn toàn mới của vanilla .

Tôi tìm thấy Installation Directorycài đặt xây dựng và nhận thấy nó được đặt thành một đường dẫn tùy chỉnh trong dự án của tôi. Tôi chỉ đơn giản là xóa nó (đặt nó thành giá trị chung của nó /Applications) và Build -> Archive tiếp theo tôi đã làm như mong đợi và đưa cho tôi một Lưu trữ ứng dụng iOS thích hợp.

TL; DR: Đảm bảo Installation Directorycài đặt bản dựng của bạn được đặt thành giá trị mặc định /Applicationskhi bao gồm mã Swift trong ứng dụng của bạn, đặc biệt nếu bạn đang bắt đầu với tệp dự án cũ hơn có thể có một số cài đặt bản dựng kế thừa không mong muốn.


3

Để lại đây để cứu những người khác từ cùng một hành trình.

Tôi thấy tôi cần phải loại bỏ giai đoạn xây dựng Sao chép tài nguyên Pod tương tự khỏi mục tiêu thư viện tĩnh trong không gian làm việc của tôi.


sau khi thử rất nhiều thứ ở trên, cái này hiệu quả với tôi (Xcode 7)
humphriesj

2

Ngoài câu trả lời của Alex L.

Điểm 3. Thay đổi 'Xây dựng cài đặt' -> 'Đường dẫn thư mục tiêu đề công cộng' thành 'bao gồm / xxx' cũng hoạt động.


Điều này đúng hơn so với số 3 ở trên. Các tiêu đề của bạn cần được công khai nếu bạn đang xây dựng một thư viện tĩnh
bcattle

2

Nếu không có điều nào ở trên giúp bạn ... sau nhiều thời gian .......

Tôi đã xóa giá trị trong Info.plist cho Bundle Version vì tôi đã đủ hạnh phúc chỉ với Bundle Version 1.0. Xấu. Đừng làm điều này.

* Lưu ý Tôi thực sự đã làm điều này bằng cách chỉnh sửa nó trong giao diện người dùng ở bên phải không nhận ra rằng nó sẽ đặt một khóa trống trong tệp Info.plist. Tôi nghĩ rằng điều đó làm cho nó không hợp lệ. Gói của tôi xuất hiện dưới dạng các mục khác trong khi lưu trữ và không có biểu tượng và tôi không thể tải lên bất cứ nơi nào.

Điều này giúp giảm giá trị không hợp lệ trong Info.plist. Nếu đó không phải là một kho lưu trữ hợp lệ, hãy thử giải nén một kho lưu trữ cũ và thả vào / ghi đè lên kho lưu trữ hiện tại của bạn và xem liệu nó có sửa nó khi xây dựng lại kho lưu trữ không.


1
  1. Chuyển đến Cài đặt bản dựng và thêm

    yourAppName / Resources / dist.plist với các Quyền đăng nhập mã

  2. Nhấn cmd + B với Thiết bị iOS hoặc Thiết bị thực được chọn làm Mục tiêu xây dựng

  3. Khi hoàn tất -> cuộn đến thư mục "Sản phẩm" và nhấp chuột phải vào yourAppName.app

  4. Chọn "Hiển thị trong Finder"

  5. Tạo một thư mục với Name Payload (viết hoa "P" )

  6. Sao chép yourAppName vào Thư mục Tải trọng của bạn

  7. Tạo một zip từ Thư mục Tải trọng của bạn

  8. Đổi tên zip thành yourAppName.ipa

LÀM XONG


1

Sau khi thử mọi thứ:

  • Làm sạch, lưu trữ
  • xóa DeruredData, Lưu trữ
  • khởi động lại Xcode (Tôi đang sử dụng XCode7), Lưu trữ
  • kết hợp ở trên ...

Sau đó tôi nhận thấy phân vùng khởi động của mình là 'không gian đĩa trống' ... khoảng 1GB hoặc hơn. Tôi khởi động lại, sau đó nhận được khoảng 18 GB miễn phí.

Sau đó, mở Xcode và dự án, thực hiện Lưu trữ ... và thật bất ngờ (sau một giờ cố gắng xây dựng Lưu trữ) cuối cùng tôi đã nhận được Lưu trữ không chung.

Không biết vấn đề về đĩa miễn phí có khắc phục được nó hay khởi động lại macOS đã khắc phục nó hay không, nhưng nó đã hoạt động với tôi.



0

Trong trường hợp của tôi, tôi đã phải chuyển cả FMDB và BlocksKit sang các thư viện tĩnh. Trước đây chúng được xây dựng như các tiểu dự án. Hãy nhớ rằng bạn có thể sử dụng lipo để tạo các thư viện phổ quát. Khi xây dựng các sản phẩm cuối cùng, mã giả lập sẽ bị tước tự động.


0

Một lý do có thể khác cho việc này là để có các tài liệu tham khảo trong "Phụ thuộc mục tiêu" cho các dự án cho một nền tảng khác. Trong trường hợp cụ thể của tôi, tôi đã làm việc trên một dự án chia sẻ mã cho OSX và iOS. Trong một trong những mục tiêu của iOS, tôi đã vô tình thêm mục tiêu OSX làm phụ thuộc.


0

Để được kỹ lưỡng, tôi đang đăng giải pháp của tôi.

Tôi đã gặp vấn đề chính xác tương tự khi cố gắng xây dựng Lưu trữ dự án iOS trong Xcode 5.1.1 (5B1008). Không có đề xuất nào ở trên khắc phục được sự cố và hầu hết trong số chúng đều không liên quan (Tôi chưa thêm bất kỳ Khung nào và không có bất kỳ mục Công khai nào trong phần Sao chép Tiêu đề của Giai đoạn Xây dựng của tôi).

Trong trường hợp của tôi, việc khắc phục sự cố chỉ đơn giản là đóng dự án của tôi, xóa mọi tài liệu lưu trữ mà tôi đã thực hiện trước đó, đi đến Tùy chọn> Tài khoản, xóa tài khoản nhà phát triển của tôi, thoát Xcode, khởi chạy lại, thêm lại tài khoản nhà phát triển của tôi, bắt đầu quá trình Lưu trữ lần nữa. Điều này đã khắc phục vấn đề của tôi ngay lập tức.


0

Một giải pháp nữa, vì tất cả những điều trên không hiệu quả với tôi ...

Đã thay đổi User Header Search Paths(tôi cho rằng Header Search Pathssẽ hoạt động tốt như vậy) "$(BUILT_PRODUCTS_DIR)/BlocksKit".

Bối cảnh :

Trong BlockKit, các nhà phát triển đã cấu trúc các tiêu đề trong dự án chính khác với cấu trúc triển khai. Vì vậy, bạn không thể tham chiếu các tiêu đề trong dự án và phải tham chiếu các tiêu đề được sao chép vào thư mục bản dựng.


0

Cách thức này hoạt động với tôi trong (Xcode 5) Tôi có 2 mục tiêu và khi tôi chỉnh sửa lược đồ, ở khung bên trái của trình chỉnh sửa lược đồ, bạn sẽ thấy [BUILD, RUN, TEST, PROFILE XXX.APP, ANALYZE, ARCHIVE ] từ khung BUILD, bạn sẽ thấy các mục tiêu dự án của bạn được liệt kê trong danh sách. Ở góc cuối bên phải, bạn sẽ thấy các lựa chọn ARCHIVE, đảm bảo chỉ có một mục tiêu được chọn để lưu trữ.

Tôi đã chọn 2 mục tiêu trong dự án của mình, tôi chỉ kiểm tra mục tiêu tôi muốn trong sản phẩm và nó đã hoạt động!


0

Tôi đã giải quyết lỗi này bằng cách chỉ mở dự án ứng dụng trong XCode, tức là. không mở một không gian làm việc bao gồm ứng dụng và các dự án / thư viện / khung công tác khác.

Có 2 dự án riêng biệt, một khuôn khổ hay thư viện chia sẻ và ứng dụng iOS, tôi đã phải mở 2 cửa sổ XCode khác nhau, mỗi bằng cách trực tiếp mở .xcodeproj tập tin thay vì phổ biến .xcworkspace , để mỗi build preperly.

Là một hiệu ứng phụ tuyệt vời, XCode không còn xây dựng lại mọi mục tiêu của mọi dự án sau khi tôi thực hiện Clean , dẫn đến thời gian xây dựng bị rút ngắn.

Bối cảnh: Tôi đang tạo SDK nguồn mở và ứng dụng iOS demo. Tôi đã mở cả hai trong một không gian làm việc. Đặt Skip cài đặt thành trên các mục tiêu SDK sẽ ngăn mọi người tạo tệp lưu trữ, vì nó sẽ trống, vì vậy đây không phải là một tùy chọn. Sử dụng Project thay vì tiêu đề công cộng sẽ dẫn đến một kho lưu trữ thiếu các tệp tiêu đề cần được phân phối, vì vậy đây cũng không phải là một tùy chọn.


0

Vì đó là vì tôi đã làm việc trong một không gian làm việc. Dự án đã lưu trữ nhưng sẽ không được hiển thị trong cửa sổ tổ chức. Tôi đã đóng không gian làm việc và tự mở dự án. Việc lưu trữ đã được mở trong trình tổ chức ... hy vọng nó sẽ giúp.


0

Trong trường hợp của tôi, tôi đã có một tập lệnh tùy chỉnh đang sao chép một số tệp tạm thời vào:

${TARGET_BUILD_DIR}/myTempDir

Điều đó có nghĩa là, sau khi điều tra kho lưu trữ để kiểm tra nội dung của nó, tôi đã tìm thấy ngay bên cạnh tệp .app một thư mục myTempDir. Khi tôi sửa đổi tập lệnh để lưu ở nơi khác, mọi thứ đã được sắp xếp.


0

Hãy thử đặt Tiêu đề $ (PRO DỰ_NAME) trong Đường dẫn thư mục tiêu đề công khai của Framework projet. Bạn phải đi đến để xây dựng cài đặt của Thư viện mục tiêu, sau đó chỉnh sửa đường dẫn Thư mục tiêu đề công cộng thành Tiêu đề $ (PROJECT_NAME).


0

Nếu sử dụng Xcode 7 với cocoapods v.0.38.2 . Hãy thử loại bỏ copy pod resourceskhỏi mục tiêu mở rộng ngày hôm nay của bạn.

nhập mô tả hình ảnh ở đây


0

Tôi đã gặp phải sự cố này sau khi thêm công cụ dòng lệnh OS X vào dự án ứng dụng iOS của tôi và Skip Install được đặt thành NO theo mặc định cho mục tiêu của công cụ dòng lệnh. Vì rõ ràng bạn không thể cài đặt nhị phân OS X cho thiết bị iOS, nên việc lưu trữ mặc định thành kho lưu trữ Xcode chung. Đặt Skip Cài đặt thành CÓ cho mục tiêu này đã khắc phục sự cố.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.