मैंने इस समस्या का अनुभव किया और 'नहीं टोकन प्रदान किए गए' के प्रत्येक उदाहरण पर ब्रेकपॉइंट लगाए, जिसका मैं उपयोग कर पाया:
grep -lr 'No tokens were provided' vendor/
जो लौटा:
vendor/zendframework/zend-code/src/Scanner/ConstantScanner.php
vendor/zendframework/zend-code/src/Scanner/TokenArrayScanner.php
vendor/zendframework/zend-code/src/Scanner/MethodScanner.php
vendor/zendframework/zend-code/src/Scanner/PropertyScanner.php
vendor/zendframework/zend-code/src/Scanner/ClassScanner.php
मेरा अपवाद TokenArrayScanner.php
फ़ाइल में फेंका जा रहा था । "टोकन" उदाहरण का मूल्य कंस्ट्रक्टर में सेट किया गया है, इसलिए मैंने वहां एक विराम बिंदु रखा और प्रक्रिया को फिर से लॉन्च किया। दुर्भाग्य से, इस निर्माता को कई फ़ाइलों पर कई बार कहा जाता है, और फ़ाइल के टोकन के लिए डेटा निर्माण कॉल में शामिल नहीं है। मैं यह निर्धारित करने में सक्षम था कि "टोकन" फ़ाइल की केवल लाइनें हैं जिनका निरीक्षण किया जा रहा है। CarComp द्वारा पोस्ट के आधार पर, मैंने इसका इस्तेमाल अपमानजनक फ़ाइल खोजने के लिए किया:
find . -type f -name '*.php' -empty
इसने कई फ़ाइलों को बदल दिया, जो "देव / परीक्षण" वाले रास्तों के नीचे रहते थे, जिन्हें स्कैनिंग से बाहर रखा गया है, और एक तीसरे पक्ष के डेवलपर की एक फ़ाइल। इस फ़ाइल को निकालने से समस्या हल हो गई और संकलन आदेश केवल शिकायतों और अपवादों के साथ पूरा हुआ।