2015-12-16 31 views
30

के माध्यम से एक्सकोड में पैकेज कैसे स्थापित करें मैं एक्सकोड में एक प्रोजेक्ट पर काम कर रहा हूं और स्विफ्ट पैकेज मैनेजर के माध्यम से CryptoSwift पैकेज को स्थापित करने और उपयोग करने का प्रयास कर रहा हूं।स्विफ्ट पैकेज प्रबंधक

मैंने एसपीएम पर documentation पढ़ा, लेकिन मुझे एक्सकोड के माध्यम से एसपीएम को कैसे आमंत्रित किया जाए, इस पर निर्देश नहीं दिख रहे हैं।

उदाहरण अक्सर $ swift build पर कॉल करने के लिए संदर्भित करते हैं। क्या इसका मतलब यह है कि एसपीएम केवल कमांड लाइन से ही सुलभ है? और यदि हां, तो मुझे वास्तव में Package.swift फ़ाइल कहां बनाना है?

मैं एक्सकोड के साथ उचित रूप से परिचित हूं, लेकिन मुझे वास्तव में किसी प्रोजेक्ट के निर्माण सेटिंग भाग का अर्थ समझ नहीं आता है, या स्विफ्ट मॉड्यूल का उपयोग कैसे किया जाता है।

यदि अधिक संदर्भ की आवश्यकता है, तो this वह प्रोजेक्ट है जो मैं एक्सकोड में काम कर रहा हूं।

संपादित करें: यह प्रश्न मूल रूप से एक्सकोड 7.2 के लिए पूछा गया था, जो स्विफ्ट 2.1.1 के साथ भेज दिया गया था। खुशी से उन उत्तरों को स्वीकार करेंगे जो बताते हैं कि एक्सकोड के वर्तमान/भविष्य के संस्करणों के साथ इसे कैसे किया जाए।

+0

अब इस पर कोई अपडेट 7.3 है? –

+1

@ जॉन, स्विफ्ट पैकेज प्रबंधक को एक्सकोड 7.3 और स्विफ्ट 2.2.1 के साथ जारी नहीं किया गया था। यह स्विफ्ट 3 के साथ जारी होने की उम्मीद है। –

उत्तर

13

वर्तमान में, स्विफ्ट पैकेज प्रबंधक उर्फ ​​एसपीएम का उपयोग करने के लिए, आपको विकास ऐप्पल here द्वारा प्रदान किए गए स्विफ्ट 2.2 के संस्करण को स्थापित करने की आवश्यकता है। एक्सकोड 7.2 स्विफ्ट 2.1.1 के साथ भेज दिया गया है और एसपीएम के साथ काम नहीं करता है जब तक स्विफ्ट 2.2-देव स्थापित नहीं होता है।

आप स्विफ्ट 2.2-देव के साथ संकलित कर सकते हैं लेकिन आपको swift build का उपयोग करके कमांड लाइन पर CryptoSwift का निर्माण करने की आवश्यकता होगी। जब लाइब्रेरी और modulemaps बनाया जाता है, तो आप खोजक का उपयोग कर उन्हें एक्सकोड 7.2 में खींच और छोड़ सकते हैं। एसपीएम आवश्यक फ़ाइलों को .build निर्देशिका में रखता है। लेकिन एक्सकोड 7.2 को वैकल्पिक टूलचेन के साथ शुरू करने की आवश्यकता है। यह xcrun launch-with-toolchain /Library/Developer/Toolchains/swift-latest.xctoolchain का उपयोग कर कमांड लाइन से किया जा सकता है आप एसपीएम के साथ बनाए गए मॉड्यूल/पुस्तकालयों से import करने में सक्षम होना चाहिए।

हालांकि ध्यान दें कि आप उस समय स्टोर में आईओएस ऐप्स सबमिट नहीं कर सकते हैं, जो 2.2 विकास संस्करण के साथ बनाया गया है। आप बिना किसी समस्या के चीजों को बना सकते हैं/चला सकते हैं/परीक्षण कर सकते हैं, हालांकि खेल के मैदान कार्यात्मक नहीं हैं और डीबगर के साथ एक्सकोड समस्याएं हो सकती हैं।

+0

उपरोक्त सभी सही है ... मैं XCode 7.3 ड्रॉप के लिए प्रतीक्षा (उम्मीद है कि बहुत लंबा नहीं) की सिफारिश करता हूं जिसमें स्विफ्ट टूल श्रृंखला के साथ बेहतर एकीकरण है। – rougeExciter

17

स्विफ्ट पैकेज प्रबंधक अब

swift package generate-xcodeproj 

this answer में उल्लिखित, लेकिन यह केवल काम करता है जब एक पुस्तकालय विकास, या कमांड लाइन उपकरण के साथ पैदा Xcode प्रोजेक्ट समर्थन करते हैं। Not (yet) for (iOS/OS X) graphical application developer:

ध्यान दें कि इस समय पैकेज प्रबंधक को आईओएस, वॉचओएस, या टीवीओएस प्लेटफ़ॉर्म के लिए कोई समर्थन नहीं है।

नोट:

  • यह अच्छी तरह से काम नहीं कर सकते अपने पैकेज का नाम में एक स्थान है, अर्थात परिवर्तन "App स्टोर" से "AppStore" वहाँ है यदि।
+0

स्विफ्ट 3 और एक्सकोड 8 के रिलीज के साथ यह बदल गया है? – zirinisp

+0

@zirinisp यह अभी भी मेरे लिए काम करता है, एक्स कैपिटन पर एक्सकोड 8 स्थिर (आज अपडेट) के साथ। –

+0

जब आप लिनक्स के विकास के लिए मैक एक्सकोड का उपयोग करते हैं तो यह बहुत अच्छा काम करता है – AleyRobotics

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