विजुअल स्टूडियो 2012 वेब पब्लिश फाइल की कॉपी नहीं करता है


229

मेरे पास वीएस 2012 में एक वेब एप्लिकेशन परियोजना है और जब मैं वेब प्रकाशन टूल का उपयोग करता हूं तो यह सफलतापूर्वक निर्माण करता है लेकिन किसी भी फाइल को प्रकाशन लक्ष्य (इस मामले में फाइल सिस्टम) की नकल नहीं करता है।

यदि मैं निर्माण आउटपुट को देखता हूं तो मैं देख सकता हूं कि सब कुछ obj \ Release \ Package \ PackageTmp \ पर सही ढंग से कॉपी हो जाता है, लेकिन फिर मैं निर्माण आउटपुट में सभी देखता हूं:

4> निर्माण परियोजना "{प्रोजेक्ट} .csproj"।
4> मौजूदा फ़ाइलों को हटाना ...
4> प्रकाशन फ़ोल्डर / ...
4> ========== बिल्ड: 3 सफल, 0 विफल, 1 अप-टू-डेट, 0 स्किप ===== =====
========== प्रकाशित: 1 सफल, 0 विफल, 0 स्किप ==========

भले ही यह कहता है कि प्रकाशन सफल रहा है लेकिन प्रकाशन के लिए लक्ष्य निर्देशिका में फाइलें नहीं हैं।

मैंने इसे कई परियोजनाओं में देखा है और कभी-कभी ऐसा लगता है कि समाधान / प्लेटफ़ॉर्म कॉन्फ़िगरेशन इस समस्या का कारण बनता है, लेकिन मैं इसके लिए एक सटीक कारण इंगित नहीं कर पाया।

क्या किसी और ने इसे होते हुए देखा है या इस पर विचार किया है कि इसे सही तरीके से कैसे प्राप्त किया जाए?

अपडेट करें:

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

अद्यतन 2:

मैंने Microsoft Connect पर बग पोस्ट किया और VS वेब डेवलपर टीम के डेवलपर से वापस सुना। उन्होंने कहा कि उन्होंने इस मुद्दे को अपने आंतरिक बिल्ड में तय किया है और जल्द ही प्रकाशन उपकरण को एक अद्यतन जारी करेंगे जो इस समस्या को ठीक करेगा।

अद्यतन 3:

यह हाल ही में विजुअल स्टूडियो 2012 अपडेट 2 के साथ तय किया गया है


1
यह अजीब है। यदि आप प्रकाशन फ़ोल्डर / ... देखते हैं, तो उसे सही तरीके से काम करना चाहिए। मेरा सुझाव है कि आप अपने रास्ते से जाँच करें। सुनिश्चित करें कि आप सही जगह देख रहे हैं।
मैक्सिमम

14
यह विजुअल स्टूडियो 2012 के साथ विंडोज 8 पर मेरे साथ हुआ था। मैंने अभी एक नया प्रकाशन प्रोफ़ाइल बनाया है और यह काम करता है! शायद वी.एस. 2012 में एक बग।: /
टी

3
मुझे भी यही समस्या थी। प्रकाशन प्रोफ़ाइल को हटाना और फिर से बनाना मेरे लिए ट्रिक था।
टॉमी जेकबसेन

3
प्रोफाइल को डिलीट और रिक्रिएट करना मेरे लिए ट्रिक था।
माइकल वेल्स

3
यह दृश्य स्टूडियो अपडेट 2 में तय नहीं किया गया है, न ही अपडेट 3 में "स्वीकार किए गए उत्तर" (जो समाधान नहीं है) के बाद सबसे लोकप्रिय उत्तर की जांच करें। बस प्रोफ़ाइल संपादित करें और "सेटिंग" टैब पर जाएं - सूची से सही कॉन्फ़िगरेशन चुनें (यदि रिलीज़ अच्छा है, तो डिबग चुनें, सहेजें, फिर संपादित करें और रिलीज़ का चयन करें)। सहेजें और प्रकाशित करें।
अग्निशमन

जवाबों:


78

यह उन समाधानों / परियोजनाओं के कारण हो सकता है जो कि RC2012 बनाम के साथ बनाए गए थे। यह मेरे साथ महीनों पहले हुआ था और यह सुनिश्चित करके समस्या का समाधान किया गया था कि मेरा समाधान बिल्ड कॉन्फ़िगरेशन मेरे प्रोजेक्ट कॉन्फ़िगरेशन से मेल खाता हो ...

मैं हाल ही में एक ही समस्या का अनुभव किया जब एक ही समाधान मूल रूप से vs2012RC में बनाया गया था के लिए VS2012 एक्सप्रेस वेब के लिए। मैंने वही किया जो मूल पोस्टर ने सुझाया और इसने मेरी समस्या को ठीक कर दिया।

यहाँ वह धागा है जो मुझे उत्तर की ओर ले जाता है:

connect.microsoft.com/VisualStudio/feedback/details/746321/publish-web-application-fails

ऊपर की बातचीत से उचित प्रतिक्रिया से मुझे मदद मिली:

Microsoft द्वारा 6/13/2012 को 12:00 अपराह्न हाय एंड्रयू, पर पोस्ट किया गया

यह एक बग था जिसमें हम समाधान कॉन्फ़िगरेशन बनाम प्रोजेक्ट कॉन्फ़िगरेशन को संभालते हैं। हमने गलत तरीके से यह मान लिया था कि वे समान होंगे (उदाहरण के लिए सॉल्यूशन रिलीज़ | x86 प्रत्येक प्रोजेक्ट को रिलीज़ के लिए सेट किया जाएगा। x86 साथ ही), जिसके कारण हमें फ़ाइलों को प्रकाशित करने के लिए गलत बिल्ड प्रॉपर्टीज़ का उपयोग करना पड़ा।

समाधान को कॉन्फ़िगरेशन बनाना और कॉन्फ़िगरेशन मैच का निर्माण करना है। यह समस्या विज़ुअल स्टूडियो 2012 की अगली रिलीज़ में तय की जाएगी।

धन्यवाद, - जिमी लुईस एसडीईटी, विजुअल वेब डेवलपर टीम


8
यह समस्या मेरे लिए एक नए दृश्य स्टूडियो 2012 प्रोजेक्ट पर होती है। यह अतीत में एफटीपी पर प्रकाशित हुआ था, लेकिन अब जब मैं इसे प्रकाशित करने की कोशिश करता हूं तो यह बिल्कुल ऊपर जैसा होता है - यह दिखावा करता है, कहते हैं कि यह सफल था, और कुछ भी नहीं धकेलता है। यह आउटपुट को obj dir में बनाता है, लेकिन यह वास्तव में इसे सर्वर पर कॉपी नहीं करता है। परिवर्तन कॉन्फ़िगरेशन ट्रिक हालांकि इसे ठीक करती है।
क्रिस मॉसचिनि

12
अरे! यह अभी भी SP2 में टूट गया है!

6
मुझे बस एक ही मुद्दा था और यह एहसास हुआ कि प्रकाशित सेटिंग्स "किसी भी सीपीयू" के लिए चूक गईं, लेकिन मेरा समाधान "986" पर सेट है। प्रकाशित करें में सेटिंग्स को x86 में बदलकर समस्या को ठीक किया गया।
सैम

मेरे लिए काम से ऊपर कोई भी समाधान नहीं है। प्रोफ़ाइल हटाना और पुन: कॉन्फ़िगर करना, कॉन्फ़िगरेशन बदलना और वापस बदलना, वीएस को फिर से शुरू करना, सभी को फिर से बनाना आदि, मैंने अपने ऐप में एक नया दृश्य बनाया। यह वहाँ है। मै देख सकता हुँ। जब मैं स्थानीय स्तर पर इसे प्रदर्शित करता हूं। जब मैं प्रकाशित करता हूं, तो यह नहीं होता है। मेरे पास अपडेट 4 है
रॉबर्ट

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

104

एक ही समस्या है। वर्कअराउंड रिलीज़ से डीबग तक प्रकाशित सेटिंग्स बदल रहा था। पुनः प्रकाशित करें और फिर वापस रिलीज़ में बदलें ...


हाँ! यह अच्छा जवाब है। मेरे मामले में मैं डिफ़ॉल्ट "रिलीज़" या "डीबग" प्रोफाइल का उपयोग नहीं करता, लेकिन "डीईवी", "स्टेज" और "लाइव"। मैंने देखा है कि उदाहरण के लिए STAGE के लिए, एक सहकर्मी कंप्यूटर पर, जिसने TFS के माध्यम से मेरा समाधान डाउनलोड किया, प्रोफ़ाइल गलत तरीके से "रिलीज़" (अन्य सभी प्रोफाइलों के लिए समान) पर सेट थी। इसलिए मुझे इसे ठीक करना था और इसे "STAGE" (या अन्य लोगों के लिए DEV / LIVE) को इंगित करना था। द पब्लिश ने काम किया। धन्यवाद।
फायरपोल

एक जादू की तरह काम किया। यह स्वीकार किए गए उत्तर को लेना चाहिए।
ऐकान येश्ट

39

इसे थोड़ा और आगे ले जाने के लिए। आपके पास एक प्रकाशन प्रोफ़ाइल बनाते समय दो फाइलें होती हैं।

  • NewProfile.pubxml
  • NewProfile.pubxml.user

जब आप किसी प्रोजेक्ट को इन फ़ाइलों को किसी स्रोत नियंत्रण से PublishProfile फ़ोल्डर में खोलते हैं , तो इसमें केवल .pubxmlफ़ाइल होती है और फ़ाइल नहीं होती है .publxml.user, इसलिए .publxml.userप्रोजेक्ट को खोलने पर यह फ़ाइल को मक्खी पर बनाता है । जब यह .publxml.userमक्खी पर नया बनाता है तो xml जैसा दिखता है:

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
</Project>

जब आप एक नया प्रोफ़ाइल बनाते हैं तो यह xml बनाता है जो दिखता है:

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <TimeStampOfAssociatedLegacyPublishXmlFile />
    <EncryptedPassword />
  </PropertyGroup>
</Project>

यदि आप <PropertyGroup>नोड लेते हैं और इसे .pubxml.userफ़ाइल में डालते हैं तो आपका पब्लिशप्रोफाइल फिर से काम करना शुरू कर देगा।


5
+1 जो मेरे लिए लग रहा था। यदि आप दो फ़ाइलों को खोलते हैं और नई प्रोफ़ाइल बनाने के बाद उनकी तुलना करते हैं तो यह थोड़ा आसान हो जाता है। मैंने यह भी पाया कि किसी टीम में काम करते समय दोनों फाइलों को स्रोत नियंत्रण में जांचना आवश्यक था।
डीनो

@ डीनो किसी भी .user फ़ाइल में जाँच की समस्या यह है कि अब आपके पास व्यक्तिगत (स्थानीय) प्रोजेक्ट अनुकूलन की क्षमता नहीं है। उपयोगकर्ता फ़ाइल का उद्देश्य व्यक्तिगत टीम के सदस्यों को अपनी स्थानीय सेटिंग रखने की अनुमति देना है।
डेव रिडेल

क्या स्रोत नियंत्रण में ".pubxml.user" फ़ाइल को जोड़ने के बजाय कोई अन्य समाधान है?
उबिक्युटी

हम * .user फ़ाइलों को स्रोत नियंत्रण में नहीं रखते हैं, लेकिन संयोग से, हम विजुअल स्टूडियो के अंदर प्रकाशित प्रोफ़ाइल का उपयोग नहीं करते हैं, क्योंकि हमारा कंटीन्यूअस इंटीग्रेशन सर्वर और निर्माण प्रक्रिया सभी का प्रबंधन करती है ...
ब्रेट रिग्बी

21

एक आसान तय यह है कि आप अपने प्रकाशित प्रोफ़ाइल को हटा दें और एक नया निर्माण करें।

जब आप अपने समाधान पर राइट क्लिक करते हैं और प्रकाशन का चयन करते हैं, तो आपके पास एक प्रोफाइल सेट होता है। इसे हटाएं और एक नया बनाएं।

यह इसे ठीक कर देगा।

मुझे 2010 से 2012 तक स्विच करने से यह समस्या थी


यह मेरे लिए काम करता है, जो मैं करता हूं वह स्थानीय मशीन में प्रोफाइल को हटाने और उन्हें फिर से बनाने के लिए था। यह दूसरों की विकास मशीनों को प्रभावित नहीं करता है।
जीन जिमेनेज़

मुझे यह समस्या स्विचिंग प्रोजेक्ट vs2013 से vs2012 तक आ गई और इस समस्या को पूरी तरह से ठीक कर दिया गया
NikiUsefi

इसने मेरे लिए काम किया। मैंने अपने (फाइल सिस्टम) पब्लिश प्रोफाइल: stackoverflow.com/a/20616521/381082
DeveloperDan

9

मेरे पास एक ही त्रुटि थी और मैं सेटिंग को रिलीज़ से डीबग में बदल देता हूं और समस्या हल हो गई है।


8

मुझे भी यही समस्या थी लेकिन इस सूत्र में किसी भी उत्तर ने मेरे लिए काम नहीं किया। मेरा मुद्दा यह था कि एक निर्देशिका है जिसमें गतिशील रूप से उत्पन्न (मेरे ऐप द्वारा) स्थिर HTML फाइलें हैं। पूरी निर्देशिका प्रकाशित नहीं हो रही थी।

मेरे लिए काम करने वाला समाधान यहां पाया गया था :

एक मुद्दा मुझे थोड़ी देर पहले मिला और मुझे लगा कि मुझे दस्तावेज़ चाहिए कि जब मैंने अपना प्रोजेक्ट प्रकाशित किया तो कुछ फ़ाइल प्रकार अपलोड नहीं किए जा रहे थे।

प्रश्न में फ़ाइल प्रकार .pdf फ़ाइलें और .rtf थे।

ऐसा इसलिए हुआ क्योंकि इन फाइल एक्सटेंशनों को विजुअल स्टूडियो द्वारा प्रकाशन की आवश्यकता के रूप में मान्यता नहीं दी गई थी। सौभाग्य से इसे Visual Studio में बदला जा सकता है।

उस फ़ाइल का चयन करें जिसे कॉपी नहीं किया जा रहा है। में गुण है कि यह सुनिश्चित बिल्ड कार्रवाई के लिए सेट है सामग्री

यदि यह काम नहीं करता है तो निम्नलिखित की कोशिश की जा सकती है।

प्रोजेक्ट मेनू के तहत पैकेज / प्रकाशित वेब का चयन करें और इस ड्रॉप डाउन पर ध्यान दें:

यहां छवि विवरण दर्ज करें

इस प्रोजेक्ट फ़ोल्डर में इसे सभी फ़ाइलों में बदलने का प्रयास करें।


यह मेरी स्थिति के लिए काम करता है - जब केवल फाइलों में से कुछ प्रकाशित किए गए थे।
एंड्रयू रैलन

यह केवल इसलिए काम आया क्योंकि फाइलें प्रोजेक्ट में ठीक से शामिल नहीं थीं। मूल कारण और समाधान के लिए नीचे इस उत्तर को देखें: stackoverflow.com/a/40721544/3520070
एंड्रयूरॉन

आप किस उत्तर का मतलब है?
टॉमस क्यूब्स

7

ऐसा इसलिए है क्योंकि .pubxml.user में प्रकाशित करने के लिए आवश्यक जानकारी होती है, और वह फ़ाइल स्रोत नियंत्रण में शामिल नहीं (और होनी चाहिए) नहीं है। इस VS बग को ठीक करने के लिए, .pubxml.user फ़ाइल से .pubxml फ़ाइल की जानकारी कॉपी करें। प्रासंगिक गुण हैं:

<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>

उन लोगों को अपने .pubxml में डालें और आपको जाने के लिए अच्छा होना चाहिए।


7

मैंने इन सभी समाधानों की कोशिश की लेकिन यह वह है जो हर बार काम करता है।

हम "फाइल सिस्टम" से "फाइल सिस्टम" को उदाहरण के लिए "वेब डिप्लॉय" में बदलते हैं, और तुरंत इसे "फाइल सिस्टम" में बदल देते हैं।


हाँ यह वही है जो आखिरकार मेरे लिए भी काम कर गया (ऊपर दिए गए अन्य सभी सुझावों की कोशिश की)। यह vs2010
करेन

5

मेरे पास (कई परियोजनाओं के लिए) एक ही समस्या है। हिट केवल वेब परियोजनाओं के लिए लग रहे हो। प्रोफ़ाइल को हटाना और पुनःप्राप्त करना समस्या को केवल एक बार हल करता है। एडिशनल, पब्लिश किया गया पब्लिशएक्सएमएल की तुलना करने से कोई अंतर नहीं होता है, इसलिए यह प्रोफाइल से संबंधित नहीं लगता है।

ओपी द्वारा आगे और पीछे की समस्याओं के निर्माण के लिए उल्लिखित समाधान इस समय एकमात्र विश्वसनीय समाधान लगता है।


मेरे लिए भी एक ही समाधान था। स्पष्ट करने के लिए, चरण: बनाएँ> प्रकाशित करें। बाईं ओर सेटिंग टैब चुनें। बिल्ड कॉन्फ़िगरेशन को किसी अन्य चीज़ में बदलें। आप देखेंगे कि अब प्रकाशित प्रोफ़ाइल के नाम के आगे एक तारांकन चिह्न (*) है - यह एक संकेत है कि बग को विफल कर दिया गया है। आप जो चाहते थे, उसे वापस कॉन्फ़िगरेशन बदलें। सामान्य रूप में प्रकाशित के साथ आगे बढ़ें। फिक्स्ड।
क्रिस मोसचिनी

4

मैं वीएस 2010 पर एक ही समस्या में भाग गया, पब्लिश आउटपुट, इवेंट लॉग, ऑन करने और विजुअल स्टूडियो लॉग आदि की जांच करने के बाद मैंने फिर वेब पब्लिश (ऐड / रिमूव के जरिए) निकालने का फैसला किया, जो मुझे लगता है कि हाल ही में v1 में अपडेट किया गया था। 0.30810.0। इससे समस्या का समाधान हो गया।


2
हमारे पास यह समस्या थी, मेरा प्रोजेक्ट के अंतर्गत पब्लिशप्रोफाइल फोल्डर में pubxml.user फाइल से संबंधित प्रतीत हो रहा था - मेरे पास प्रकाशित करने के लिए फाइलों की एक मशीन-निर्मित सूची थी, भले ही प्रलेखन कहता है कि यह फाइल मेरे लिए विशिष्ट सेटिंग्स के लिए है ( और इसलिए स्रोत नियंत्रण में नहीं रखा गया है)। मैं ठीक प्रकाशित करने में सक्षम था। मेरे सहकर्मी ने हमारे स्रोत कोड की एक नई प्रतिलिपि ली और प्रकाशित करने में सक्षम नहीं थे - जब उनकी pubxml.user फ़ाइल उत्पन्न हुई थी कोई फ़ाइल सूचीबद्ध नहीं थी। हमने अपडेट किए गए वेब प्रकाशन को अनइंस्टॉल कर दिया है और सब फिर से ठीक है।
निक

4

यहां भी हमारी यही समस्या थी।

हम "फाइल सिस्टम" से "फाइल सिस्टम" को उदाहरण के लिए "वेब डिप्लॉय" में बदलते हैं, और तुरंत इसे "फाइल सिस्टम" में बदल देते हैं।


यह शीर्ष पर होना चाहिए
जोब्रेकहॉस

यह अब Visual Studio 2012 Update 3
KoalaBear

4

निम्नलिखित ने मेरे लिए काम किया:

बस रिलीज़> डीबग> रिलीज़ (या इसके विपरीत) से बदलें और फिर प्रकाशित करें।

आपको जिस चीज की आवश्यकता नहीं है, उसे हटाने, संपादित करने, प्रकाशित करने की कोई आवश्यकता नहीं है।


4

मेरी समस्या myproject.csproj फ़ाइल के गलत कॉन्फ़िगरेशन में थी। '_address-step1-store.cshtml' फ़ाइल प्रकाशन पर प्रतिलिपि नहीं की गई। 'कोई भी' 'सामग्री' में नहीं बदला, अब यह ठीक है। यहां छवि विवरण दर्ज करें


वह यह था! परियोजना में कई फाइलें थीं जिन्हें स्रोत नियंत्रण में जांचा गया था, लेकिन None.csproj फ़ाइल के रूप में चिह्नित किया गया था, या परियोजना से पूरी तरह से गायब थे (वहां "उपयोग नहीं किया गया")! यह पूरी तरह से बताता है कि स्थानीय स्तर पर हमेशा काम क्यों किया जाता है, लेकिन प्रकाशन ने कभी ऐसा नहीं किया। : डी
एंड्रयूरालॉन

3

एक डिस्क प्रकाशित लक्ष्य के साथ वीएस 2012 प्रो के साथ एक ही समस्या। प्रोजेक्ट सही तरीके से प्रकाशित किया गया था, लेकिन इस मुद्दे को करना शुरू कर दिया जहां यह गंतव्य फ़ोल्डर में फ़ाइलों को कॉपी करने में विफल रहा।

समाधान प्रकाशित प्रोफ़ाइल को संपादित करने के लिए था, मोड को रिलीज़ (किसी भी सीपीयू) से डीबग करने के लिए फिर वापस रिलीज़ (किसी भी सीपीयू) में बदलें। ऐसा करने से PublishProfiles \ projname.pubxml.user फ़ाइल फिर से लिखी जाती है (जैसा कि ऊपर वर्णित है)। ऐसा लगता है कि इसमें LastUsedBuild, LastUsedPlatform और TimeStampOfAssociatedLegacyPublishXmlFile तत्व प्रॉपर्टी समूह के तहत जोड़े गए हैं। प्रकाशित पूरा होने के बाद, यह अलग-अलग फ़ाइलों के साथ एक और ItemGroup जोड़ता है और बार प्रकाशित करता है।


1

यह कार्रवाई मेरे लिए सफल रही:

"गुण> PublishProfiles> xxxx.pubxml" में प्रकाशित प्रोफ़ाइल को मारें और फिर से सेटिंग करें।


1

इसके लायक क्या है, मैंने अंततः वेब डिप्लॉय के साथ लड़ने के लिए इसे छोड़ दिया जो मुझे चाहिए था उसे प्राप्त करने के लिए (कॉपी करने योग्य फ़ाइलों की प्रतिलिपि और कुछ नहीं), इसलिए मैंने इसे पावरशेल में स्क्रिप्ट किया और वास्तव में परिणाम से खुश हूं। MSBuild / Web Publish के माध्यम से मैंने जो कुछ भी आजमाया है, यह उससे कहीं अधिक तेज़ है, क्योंकि संभवतः वे तरीके अभी भी वे काम कर रहे थे जिनकी मुझे आवश्यकता नहीं थी।

यहाँ सार है ( शाब्दिक ):

function copy-deployable-web-files($proj_path, $deploy_dir) {
  # copy files where Build Action = "Content" 
  $proj_dir = split-path -parent $proj_path
  [xml]$xml = get-content $proj_path
  $xml.Project.ItemGroup | % { $_.Content } | % { $_.Include } | ? { $_ } | % {
    $from = "$proj_dir\$_"
    $to = split-path -parent "$deploy_dir\$_"
    if (!(test-path $to)) { md $to }
    cp $from $to
  }

  # copy everything in bin
  cp "$proj_dir\bin" $deploy_dir -recurse
}

मेरे मामले में मैं इसे एक सीआई वातावरण (टीमसिटी) में बुला रहा हूं, लेकिन इसे आसानी से पोस्ट-बिल्ड इवेंट के रूप में भी देखा जा सकता है।


1

मैंने पाया कि मैं इस समस्या को obj / [रिलीज़ | स्टेज | ..] से लक्ष्य स्थान में बदलकर समाधान फ़ोल्डर के बाहर एक नए रास्ते में पूरी तरह से प्राप्त कर सकता हूं। उदाहरण: c: \ तैनाती। ऐसा लगता है कि वीएस 2012 भ्रमित हो रहा था और शायद प्रकाशन प्रक्रिया के दौरान कहीं दे रहा था।

मैट


1

हाल ही में वीवीसी 2013 में एक एमवीसी परियोजना के लिए यही समस्या थी जिसमें मैंने Umbraco CMS आयात किया था। मैं प्रकाशित नहीं कर सका। उपरोक्त उत्तर ने मदद की, हालांकि मुझे यह पता लगाने के लिए कुछ समय की आवश्यकता थी कि मुझे वास्तव में वीएस में क्या करना चाहिए। यह पता लगाने के लिए MS ब्लॉग पर कुछ शोध की आवश्यकता है। मैं इसे सरल कहने की कोशिश करता हूं:

  • वीएस टूलबार में एक निश्चित कॉन्फ़िगरेशन जैसे कि रिलीज़ और कोई सीपीयू चुनें। प्रोजेक्ट चलाएं।
  • बाद में प्रश्न में समाधान पर समाधान एक्सप्लोरर में राइट-क्लिक करें, प्रकाशित करें चुनें। एक नया प्रकाशन प्रोफ़ाइल बनाएं या किसी दिए गए का उपयोग करें, लेकिन हमेशा सुनिश्चित करें कि सेटिंग्स में एक ही कॉन्फ़िगरेशन (जैसे रिलीज़ और कोई सीपीयू) चुना जाता है, जैसा कि आप पिछली बार परियोजना चलाने से पहले करते हैं।
  • इसके अतिरिक्त मेरे मामले में यह OBJ फ़ोल्डर को हटाने के लिए आवश्यक था क्योंकि यहां मेरे पिछले असफल से सेटिंग्स प्रकाशित करने का प्रयास अटक गया है, हालांकि मैंने वीएस को पुनरारंभ किया और सभी प्रकाशन प्रोफाइल को हटा दिया।

0

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

1>------ Build started: Project: Project, Configuration: DeployProduction Any CPU ------
1>  
2>Publishing folder /...
========== Build: 1 succeeded, 0 failed, 9 up-to-date, 0 skipped ==========
========== Publish: 1 succeeded, 0 failed, 0 skipped ==========

इसे पुनर्प्राप्त करने का एकमात्र तरीका प्रकाशित प्रोफ़ाइल को मिटा देना था, हटाए जाने को बचाने के लिए उसे फिर से खोलने, उसे फिर से खोलने, और प्रकाशित प्रोफ़ाइल को स्क्रैच से फिर से बनाने के लिए दृश्य स्टूडियो को बंद करना था। एक बार मैंने ऐसा किया कि मैं फिर से ठीक प्रकाशित कर सकूं।

Win8 VS2012, भद्दा लैपटॉप।


0

विज़ुअल स्टूडियो 2012 में, रिलीज़ के बीच स्विच करना अभी भी समस्याएँ पैदा करता है।

हमने objफ़ोल्डर को हटाने के लिए एक पूर्व-निर्माण घटना को जोड़ा : del /s /f /q $(ProjectDir)\objऔर इसने प्रकाशन का मुद्दा तय किया। सफाई कभी-कभी काम करती है, लेकिन हमेशा नहीं।


0

मुझे आखिरकार खुद ही जवाब मिल गया। उपरोक्त सभी समाधान मेरे लिए काम नहीं करते हैं।

मैंने क्या किया है कि मैं इस परियोजना को बदलने के लिए परियोजना फ़ोल्डर को बदलने के लिए कुछ छोटा और उछाल इसे प्रकाशित करें ..

मेरे पक्ष में असफल होने का कारण यह है कि मेरे पास बहुत लंबे प्रोजेक्ट का नाम / उत्तराधिकार था।

C: \ Users \ user \ Desktop \ अनुपालन प्रबंधन प्रणाली \ CompIssueManagementSystem \ CompIssueManagementSystem

मैंने इस बारे में सोचा था क्योंकि कभी-कभी जब मैंने rar फाइल निकाली तो यह कहता है कि नाम / रास्ता बहुत लंबा है। मुझे लगा कि यह दृश्य स्टूडियो 2012 के प्रकाशन के समान होगा। और यह करता है!

आशा है कि यह आप लोगों की मदद करेगा।


0

अपनी वर्तमान परियोजना की जाँच करें कि क्या आपने एक ही वर्ग के नाम और अलग-अलग पृष्ठ नाम के साथ प्रतिलिपि बनाई है (कक्षा का नाम कॉपी की गई फ़ाइल का वारिस होगा)। अंतत: संकलक को भ्रमित करेगा कि !!!

CodeFile = "समेकित .aspx.vb" इनहेरिट्स = "समेकित


0

उपरोक्त किसी भी समाधान ने मेरे लिए काम नहीं किया।

लेकिन मैंने देखा कि हमारे मुख्य समाधान में हमारे पाँच ASP.NET MVC प्रोजेक्ट्स में से चार ने तैनाती पैकेज को सही जगह पर रखा, जबकि एक ने इसे obj \ Debug के तहत छोड़ दिया।

मैंने परियोजनाओं की तुलना की और एक विसंगति पाई। इसका समाधान यह था :

<Import
    Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />

इसके लिए :

<Import
  Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets"
  Condition="'$(VSToolsPath)' != ''" />
<Import
  Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets"
  Condition="false" />

जब मैंने यह बदलाव किया, उसके बाद सभी पाँच परियोजनाओं ने अपने तैनाती पैकेजों को सही जगह पर रखा।

(लंबी लाइनों के बारे में क्षमा करें, लेकिन मैं उन्हें संघनित करने का बेहतर तरीका नहीं खोज सका।)


मुझे ऐसी स्थिति का सामना करना पड़ रहा है जहाँ एक फ़ाइल या दो को अनदेखा करने और सर्वर पर प्रकाशित नहीं होने पर लगता है, लेकिन, मेरी .vbproj फ़ाइल में पहले से ही दोनों <आयात> तत्व हैं जो आपको सुझाव देते हैं
bkwdesign

0

मुझे विज़ुअल स्टूडियो द्वारा निर्मित सर्विस रेफरेंस फाइल्स के साथ समग्र पथ लंबाई के मामले में बहुत लंबा होना पड़ा ।

सभी मूल सेवा संदर्भ फ़ाइलों को हटाते हुए, svcutil.exe का उपयोग करके सेवा संदर्भ को पुन: जेनरेट करके उन्हें छोटा कर दिया।

svcutil को इस तरह कहा जा सकता है:

"C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\SvcUtil.exe" /language:CS http://myservice /namespace:*,My.Namespace

संकलन त्रुटियों से बचने के लिए My.Namespace को जेनरेट किए गए सेवा प्रॉक्सी (आमतौर पर Reference.cs फ़ाइल में पाया गया) में मौजूदा नाम स्थान से प्रतिस्थापित किया जाना चाहिए।

http://myservice सेवा समापन बिंदु url के साथ प्रतिस्थापित किया जाना चाहिए।


0

मैं उसी समस्या में पड़ गया हूं। उपरोक्त किसी भी समाधान ने मेरे लिए काम नहीं किया।

इसलिए, मैंने उन फ़ाइलों को बाहर कर दिया है जो प्रकाशित करते समय कॉपी करने में विफल रहीं।


0

मैंने कई बार वेबसाइट प्रकाशित की थी। लेकिन एक दिन जब मैंने कुछ aspx फ़ाइल को संशोधित किया और फिर वेबसाइट को प्रकाशित करने का प्रयास किया, तो इसका परिणाम एक खाली प्रकाशित फ़ोल्डर में हुआ।

मेरे वर्कअराउंड पर, मुझे एक समाधान मिला।

  1. प्रकाशन विज़ार्ड प्रकाशित करते समय किसी भी त्रुटि को प्रतिबिंबित करेगा लेकिन गंतव्य फ़ोल्डर में किसी भी फ़ाइल की प्रतिलिपि नहीं करेगा।

  2. उस फ़ाइल का पता लगाने के लिए जो त्रुटि उत्पन्न करता है बस वेबसाइट फ़ोल्डर सामग्री को एक नए फ़ोल्डर में कॉपी करें और उस वेबसाइट के साथ विज़ुअल स्टूडियो शुरू करें।

  3. अब जब आप इसे प्रकाशित करने का प्रयास करेंगे तो आपको फ़ाइल नाम दिया जाएगा जिसमें त्रुटियां हैं।

  4. मूल वेबसाइट फ़ोल्डर में त्रुटि को ठीक करें और प्रकाशित करने का प्रयास करें, यह पहले की तरह ही काम करेगा।


0

हल करने के लिए इन चरणों का पालन करें:

Build > Publish > Profile > New

एक नया प्रोफ़ाइल बनाएं और इसे अपनी मौजूदा प्रोफ़ाइल के समान सेटिंग्स के साथ कॉन्फ़िगर करें।

प्रोजेक्ट अब सही ढंग से प्रकाशित होगा। यह अक्सर किसी अन्य मशीन से स्रोत-नियंत्रित प्रकाशित प्रोफ़ाइल के परिणामस्वरूप होता है जिसे विज़ुअल स्टूडियो के नए संस्करण में बनाया गया था।


0

फिक्स्ड - विभिन्न समाधान की पेशकश मेरे लिए काम नहीं किया। वीएस कम्युनिटी 2017 के साथ मेरे लिए क्या काम किया , विंडोज सर्वर 2012 आर 2 को उपयोगकर्ता के लिए टीईएमपी और टीएमपी पर्यावरण चर को बदलना था और फिर सिस्टम को पुनरारंभ करना और फिर से तैनात करना (वीएस को पुनरारंभ करना पर्याप्त नहीं था)। ये टेंपरेचर वैरिएबल हैं जहां वीएस टेंप पब्लिश करता है।

यहां छवि विवरण दर्ज करें

यहां छवि विवरण दर्ज करें

यहां छवि विवरण दर्ज करें

अस्थायी स्टूडियो को बदलने के बाद दृश्य स्टूडियो को फिर से चालू करना, चाल को रिबूट करना नहीं था।


-1

प्रथम:

  • रिलीज़ कॉन्फ़िगरेशन में बनाएँ।
  • प्रोजेक्ट प्रॉपर्टीज में-> पेज पैकेज / पब्लिश वेब के तहत सभी फाइलों और फ़ोल्डरों का चयन करें।
  • समाधान (स्वच्छ समाधान के बाद) का पुनर्निर्माण करें।
  • अब प्रकाशित करें।

पुन: प्रकाशित करते समय आपने क्या चुना है
यह करना चाहिए। यह मेरे लिए किया था! :)


-2

सबसे आसान है,

   1. select the file(s) that are not being copied,
   2. Press <F4> to get the properties window
   3. Make the "Build Action" property "compile" or "content" depending on what it is.
   4. Now this particular file will be included!
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.