वर्चुअन के तहत आर्कगिस 10.0 चलाना


12

मैं एक पायथन पैकेज पर काम कर रहा हूं जिसमें कमांड लाइन टूल और आर्कटूलबॉक्स टूल्स का मिश्रण है। पायथन विकास के लिए यह वास्तव में VirtualEnv का उपयोग करने के लिए उपयोगी है, खासकर जब इंस्टॉलरों के साथ काम करना। क्या कोई रास्ता है या तो आर्केपोर या आर्ककॉस्टिक्स पायथन में एक मौजूदा वर्चुअन ईएनवी सत्र को पहचानते हैं, ताकि जब कोई कस्टम टूल निष्पादित हो जाए तो वह वर्चुअल पायथन पाथ्स और पैकेजों के बजाय डिफ़ॉल्ट पायथथ पथों और पैकेजों का उपयोग कर रहा है c: \ Python26 \ ArcGIS10 .0?

जवाबों:


11

यह अनुप्रयोग में नहीं बनाया गया है, लेकिन मुझे लगता है कि बैच फ़ाइल चल रही है जो एक cmd.exeसत्र में virtualenv सेट करती है और फिर उसी DOS बॉक्स से arcmap.exe चलाकर आपको अपना virtualenv प्राप्त करना चाहिए। ArcMap और दोस्तों होगा स्थापित की शामिल करने के लिए थोड़ा पथ को संशोधित arcgisscriptingऔर arcpy

संपादित करें: आपको यह काम करने के लिए डेस्कटॉप ऐप में पायथन विंडो के भीतर से active_this स्क्रिप्ट को स्पष्ट रूप से कॉल करने की आवश्यकता होगी। अगर मेरे पास VirtualEnv है तो c:\Users\jason\myenvमैं execfile(r'C:\Users\jason\myenv\Scripts\activate_this.py', {'__file__': r'C:\Users\jason\myenv\Scripts\activate_this.py'})इसे चलाने के लिए एक ArcGIS डेस्कटॉप ऐप में पायथन विंडो से जारी करूंगा ।


वह काम नहीं करता है। मैंने एक VirtualEnv कार्यक्षेत्र बनाया, इसे सक्रिय किया, फिर एक पैकेज स्थापित किया जिसे मैं ArcCatalog के अंदर परीक्षण करना चाहता हूं। अब तक सब ठीक है। अगर मैं इस VirtualEnv सत्र के अंदर एक पायथन शेल खोलता हूं और नए स्थापित पैकेजों को आयात करता हूं - आयात काम करता है। अगर मैं तब आर्ककॉस्टिक्स लॉन्च करता हूं और इन पैकेजों में से एक टूलबॉक्स स्क्रिप्ट से कॉल करने की कोशिश करता हूं - तो यह काम नहीं करता है। अगर मैं ArcCatalog के अंदर पायथन शेल से sys.path को देखता हूं, तो यह ArcGIS 10.0 (C: \ Python26 \ ArcGIS10.0) के लिए डिफ़ॉल्ट पायथन निर्देशिका दिखा रहा है।
सेजब्रशगिस

4
activate_this.pyArcCatalog और दोस्तों में पायथन विंडो से अपने VirtualEnv की एक ही लिपियों निर्देशिका में स्क्रिप्ट का उपयोग करने पर भी गौर करें। मैं execfile(r'C:\Users\jason\myenv\Scripts\activate_this.py', {'__file__': r'C:\Users\jason\myenv\Scripts\activate_this.py'})ArcMap के भीतर से अपने VirtualEnv बूटस्ट्रैप और निष्पादित करने में सक्षम था ।
जेसन शहीर

1
बहुत बढ़िया! यही चाल चली।
सेजब्रशगिस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.