2015-10-30 11 views
11

मुझे यकीन नहीं है कि यह पूछने के लिए यह सही जगह है, इसलिए मुझे खेद है कि अगर मैं गलत अनुभाग का उपयोग कर रहा हूं। हम iTunes कनेक्ट करने के लिए हमारे एप्लिकेशन सबमिट मुसीबतों कर रहे हैं, ईमेल हमारे पास का कहना है:बाइनरी अस्वीकार कर दिया गया क्योंकि अमान्य सिम्लिंक, कोई विचार?

Invalid Symlink - Your package contains a symbolic link 'PlugIns/$REDACTED_WATCHKIT_EXTENSION_TARGET_NAME$.appex/$REDACTED_WATCHKIT_EXTENSION_TARGET_NAME$.appex' which resolves to a location '/Users/$REDACTED_USER$/Library/Developer/Xcode/DerivedData/Seta-ctfzptralingvtbxhssdlkkzkclw/Build/Intermediates/ArchiveIntermediates/Seta/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/$REDACTED_WATCHKIT_EXTENSION_TARGET_NAME$.appex' that does not exist or is outside of the package. 

मैं अपने प्रोजेक्ट के रूप में एक ही सेटिंग्स के साथ एक खाली Xcode प्रोजेक्ट बनाने के द्वारा त्रुटि पुन: पेश करने की कोशिश की, लेकिन मैं नहीं कर सकता iTunes कनेक्ट से एक ही त्रुटि प्राप्त करें। क्या किसी को कोई विचार है कि सिम्लिंक क्यों बनाया जा रहा है? मैंने रिक्त प्रोजेक्ट की जांच की .ipa और इसमें उस पथ में उस सिम्लिंक नहीं है, इसलिए यह obviosly गलत है लेकिन मुझे सिल्लिंक बनाने वाली बिल्ड सेटिंग/कॉन्फ़िगरेशन नहीं मिल रहा है।

मैं xcodebuild उत्पादन की जाँच की और मैं इस पाया:

SymLink build/SetaWatchKitExtension.appex /Users/$REDACTED_USER$/Library/Developer/Xcode/DerivedData/Seta-ctfzptralingvtbxhssdlkkzkclw/Build/Intermediates/ArchiveIntermediates/Seta/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/SetaWatchKitExtension.appex 
    cd $REDACTED_PROJECT_PATH$ 
    export PATH="/Applications/Xcode-7.1.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode-7.1.app/Contents/Developer/usr/bin:$REDACTED_PATH_ENV_VARIABLE$" 
    /bin/ln -sfh /Users/$REDACTED_USER$/Library/Developer/Xcode/DerivedData/Seta-ctfzptralingvtbxhssdlkkzkclw/Build/Intermediates/ArchiveIntermediates/Seta/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/$REDACTED_WATCHKIT_EXTENSION_TARGET_NAME$.appex /Users/$REDACTED_USER$/Documents/$REDACTED_PATH$/build/$REDACTED_WATCHKIT_EXTENSION_TARGET_NAME$.appex 

कौन सा ठीक हो रहा है, लेकिन किसी भी तरह कि सिमलिंक .ipa जो गलत है अंदर समाप्त होता है। यह उत्पाद संरचना बनाने के बाद और watchkit एक्सटेंशन के दौरान CompileSwiftSources से पहले लक्ष्य चरण का निर्माण होता है।

किसी भी संकेत या मदद की बहुत सराहना की जाती है। मैं एक्सकोड 7.1 का उपयोग कर रहा हूँ।

+0

यह [उत्तर] देखें (http://stackoverflow.com/questions/13399864/adding-a-symbolic-link-in-the-plication-bundle), शायद यह आपकी मदद करता है। – Granit

+0

मदद के लिए धन्यवाद, मैंने पहले से ही जवाब की जांच की है लेकिन यह हमारी समस्या से संबंधित नहीं है, हमने पहले कभी उस कार्यवाही का उपयोग नहीं किया। – Ruenzuo

+0

क्या आपने अपना पूरा कोड रिक्त प्रोजेक्ट पर ले जाने का प्रयास किया था जिसमें समस्या नहीं है? – Locksleyu

उत्तर

2

हम एक डीटीएस टिकट का इस्तेमाल किया था और हम एप्पल से निम्नलिखित प्रतिक्रिया मिली:

Thank you for contacting Apple Developer Technical Support (DTS). 

The issue seems to happen when you pass CONFIGURATION_BUILD_DIR=$PWD/build to the xcodebuild command. Instead, try removing CONFIGURATION_BUILD_DIR from the xcodebuild command, and instead, change your build location in your Workspace settings. Follow these steps: 

1. In the xcodebuild command, remove CONFIGURATION_BUILD_DIR=$PWD/build 
2. Open your Workspace in Xcode 
3. Select File > Workspace Settings 
4. Click the Advanced button 
5. Select Custom > Relative to Workspace 
6. Click the Done buttons 

This will cause the build products to still go in your build directory, and the symlink in the WatchKit Extension is no longer created. 

काम करता है यही कारण है, दुखद बात यह है कि इस सेटिंग कमांड लाइन उपकरण द्वारा लागू नहीं किया जा सकता है, Xcode पैदा कर रही है निम्नलिखित पथ पर एक फ़ाइल:

Project.workspace/xcuserdata/$USER.xcuserdatad/WorkspaceSettings.xcsettings 

और ज़ाहिर है, आप अपने VCS को उस मार्ग को जोड़ने के लिए नहीं करना चाहते हैं, तो मैं हमारे सीआई सही सेटिंग्स जोड़ सकते हैं और इससे बचने के लिए के लिए एक छोटा सा रूबी स्क्रिप्ट बनाया:

settingsFilePath = "#{ENV["PWD"]}/Project.xcworkspace/xcuserdata/#{ENV["USER"]}.xcuserdatad" 
FileUtils.mkpath(settingsFilePath) 

settings = {'BuildLocationStyle' => 'CustomLocation', 'CustomBuildIntermediatesPath' => 'Build/Intermediates', 'CustomBuildLocationType' => 'RelativeToWorkspace', 'CustomBuildProductsPath' => 'Build/Products'} 
File.open("#{settingsFilePath}/WorkspaceSettings.xcsettings", 'w') { |file| file.write(settings.to_plist) } 
0

सीधे अपनी .xcarchive फ़ाइल खोलने का प्रयास करें (विंडो-> आयोजक-> संग्रह का चयन करें-> राइट क्लिक-> खोजक में दिखाएं)।

कोई सिम्लिंक ढूंढें और समझने की कोशिश करें कि वे वहां क्यों दिखाई दे रहे हैं।

यह कोकोपोड संबंधित समस्या हो सकती है (यदि आप फली का उपयोग कर रहे हैं)। कोकोपोड अपडेट करने का प्रयास करें।

+0

मैंने इसे पहले से ही किया है, सिम्लिंक वहां है और मुझे बिल्ड चरण मिला है जहां यह xcodebuild लॉग पर बनाया गया है, मैं समझ नहीं पा रहा हूं कि xcodebuild उस symlink क्यों बना रहा है। – Ruenzuo

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