2016-09-26 29 views
23

का उपयोग कर एक्सकोड 8 में स्विफ्ट 3 पैकेज जोड़ना मैं स्विफ्ट और एक्सकोड में नया हूं। मैं मैकोज़ सिएरा और स्विफ्ट चला रहा हूं 3.स्विफ्ट पैकेज प्रबंधक

स्विफ्ट में अपने पहले प्रयासों के लिए, मैं एक सरल कमांड लाइन उपकरण विकसित कर रहा हूं। कुछ स्विफ्ट पैकेज हैं जिन्हें मैं उपयोग करना चाहता हूं और गिटहब पर दोनों पैकेजों के लिए इंस्टॉलेशन निर्देश कहते हैं कि स्विफ्ट पैकेज मैनेजर का उपयोग केवल पैकेज मैनिफेस्ट फ़ाइल में निर्भरताओं के रूप में जोड़कर करें।

मुझे पता नहीं लगा कि एक्सकोड में यह कैसे करना है। क्या मैं सिर्फ अपनी परियोजना की जड़ में 'package.swift' फ़ाइल बना सकता हूं? ऐसा करने और फिर प्रोजेक्ट चलाने पर काम नहीं लगता है क्योंकि आवश्यक पैकेज मेरे प्रोजेक्ट में जोड़े जाने लगते नहीं हैं।

क्या मैं कुछ गलत कर रहा हूं?

+0

आप कौन से पैकेज स्थापित करने की कोशिश कर रहे हैं? – Do2

+0

विशेष रूप से https://github.com/onevcat/Rainbow – Garry

+0

इसे कोकोपोड के माध्यम से इंस्टॉल करें! इंस्टॉलेशन गाइड – Do2

उत्तर

40

एक्सकोड और एसपीएम एक साथ काम कर सकते हैं, लेकिन जहां तक ​​मैं आपको बता सकता हूं कि कमांड लाइन पर एक कदम उठाने की आवश्यकता है।

Xcode प्रोजेक्ट के रूप में ही निर्देशिका में अपने पैकेज मैनिफ़ेस्ट फ़ाइल रखो, और फिर आह्वान swift package generate-xcodeproj

पैकेज प्रबंधक अपने निर्भरता नीचे खींच और .xcodeproj फ़ाइल उन्हें का उल्लेख करने के पुनर्लेखन होगा।

यह किसी भी मौजूदा स्रोत संरक्षित रखेगा, लेकिन निर्देशिका संरचना एसपीएम की पसंदीदा व्यवस्था करने के लिए पुन: कॉन्फ़िगर किया जाएगा:, मैं बड़े पैमाने पर एक जीवित परियोजना पर इस परीक्षण नहीं किया

PROJECT_DIR 
├── Sources 
│ └── ProjectName 
│  ├── YourCode.swift 
│  └── YourOtherCode.swift 
├── Dependencies 
│ └── SomeDependency 
│  ├── DependencyCode.swift 
│  └── OtherDependencyCode.swift 
└── Package.swift 

N.B.; इस तथ्य को देखते हुए कि एसपीएम दस्तावेज़ अभी भी डब्ल्यूआईपी कहते हैं, कृपया सुनिश्चित करें कि आपने हालिया प्रतिबद्धता की है।

+0

धन्यवाद के लिए कोकोपोड्स वेबसाइट देखें। एक आकर्षण काम करता है। सुरक्षा सलाह के लिए +1 भी! – Garry

+0

क्या एसपीएम को '.xcodeproj' फ़ाइल के अंदर निर्देशिका संरचना को बदलने के लिए मजबूर करने का कोई तरीका नहीं है? मैं 'स्रोतों' फ़ोल्डर के अंदर होने वाली सभी फाइलों के बारे में बहुत परेशान नहीं हूं लेकिन मेरे पास नेविगेटर के अंदर समूह भी हैं जो 'स्रोत' फ़ोल्डर को इंगित कर रहे हैं और मैं उन्हें बरकरार रखना चाहता हूं। –

+1

इन चरणों को करने वाले किसी भी व्यक्ति को एक नोट तब "कोई मॉड्यूल फू नहीं मिला" संकलक त्रुटि प्राप्त करता है। संस्करण 9.2 एक्सकोड के रूप में मुझे दो अनुशंसित परियोजना परिवर्तन प्रदान किए गए, जिनमें से एक डिफ़ॉल्ट रूप से स्विफ्ट 3 @objc अनुमान स्थापित कर रहा था। इन परिवर्तनों को करने के बाद मेरे लक्ष्य ने आयात के लिए बाहरी निर्भरता मॉड्यूल को पहचाना। – Airuop

0

swift package generate-xcodeproj चलाने के अलावा, मुझे स्थापित प्रोजेक्ट का उपयोग करने से पहले एक्सकोड में अपनी प्रोजेक्ट बनाना था।

+0

कुल ज्ञान बनाता है, क्योंकि पैकेज प्रबंधक संकुल डाउनलोड करता है, फिर उनका उपयोग करने के लिए आपको उन्हें संकलित करना होगा। – zirinisp

संबंधित मुद्दे