- मैं डॉकर का उपयोग कर रहा हूं।
- पोस्ट अपडेट कमांड (PHP वर्ग) संगीतकार अद्यतन के बाद चल रहा है।
- अच्छी तरह से काम कर रहा था जब तक मैं Laravel अद्यतन किया 5.4-> 5.5 जो नए Symfony संकुल
- संगीतकार स्पष्ट कैश डाउनलोड किया मदद नहीं की
- संगीतकार स्वयं अद्यतन मदद नहीं की
- संगीतकार हस्ताक्षर बराबर हैं
[Symfony \ घटक \ डीबग \ अपवाद \ FatalThrowableError] अपरिभाषित विधि करने के लिए कॉल रोशन \ फाउंडेशन \ कंसोल \ ClosureCommand :: setHidden()संगीतकार डॉकर (पुराने फाइल लोड करना) में अपने सिम्फनी पथ का उपयोग करता है
+०१२३५१६४१०६१
मैं फ़ाइलों को सर्च कर रहा था और यह विधि मूल वर्ग में मौजूद है! मैं निर्माता में यह छोटी बात डाल क्या चल रहा है:
use Symfony\Component\Console\Command\Command as SymfonyCommand;
class Command extends SymfonyCommand
{
public function __construct()
{
$r1 = new \ReflectionClass($this);
$r2 = new \ReflectionClass(SymfonyCommand::class);
var_dump([$r1->getFileName(), $r2->getFileName()]);
}
// rest of class
}
परिणाम: परियोजना से संगीतकार autoload खुद, पुराने Command.php बजाय इस बात का।
array(2) {
[0]=>
string(91) "/var/www/html/vendor/laravel/framework/src/Illuminate/Foundation/Console/ClosureCommand.php"
[1]=>
string(67) "phar:///usr/bin/composer/vendor/symfony/console/Command/Command.php"
}
मुझे पता है क्यों सिम्फोनी वर्ग परियोजना से लेकिन कुछ जादू जगह से लोड नहीं है और मुझे लगता है कि कैसे ठीक कर सकते हैं करना चाहते हैं।
अतिरिक्त जानकारी: php कि जोड़ने के लिए
Dockerfile संगीतकार:
# Composer
ENV PATH "/composer/vendor/bin:$PATH"
ENV COMPOSER_ALLOW_SUPERUSER 1
ENV COMPOSER_HOME /composer
ENV COMPOSER_VERSION 1.4.2
RUN curl -s -f -L -o /tmp/composer-setup.php https://getcomposer.org/installer
RUN curl -s -f -L -o /tmp/composer-setup.sig https://composer.github.io/installer.sig
RUN php -r " \
\$signature_php = hash('SHA384', file_get_contents('/tmp/composer-setup.php')); \
\$signature_sig = trim(file_get_contents('/tmp/composer-setup.sig')); \
echo ' SIGNATURE PHP: [' . \$signature_php . \"]\\n\"; \
echo ' SIGNATURE SIG: [' . \$signature_sig . \"]\\n\"; \
if (\$signature_php !== \$signature_sig) { \
unlink('/tmp/composer-setup.php'); \
echo 'Integrity check failed, installer is either corrupt or worse.' . PHP_EOL; \
exit(1); \
}"
RUN php /tmp/composer-setup.php --no-ansi --install-dir=/usr/bin cd --filename=composer --version=${COMPOSER_VERSION} \
&& rm /tmp/composer-setup.php \
&& composer --ansi --version --no-interaction
संगीतकार हिस्सा:
"post-update-cmd": [
"Modules\\Core\\Composer\\ComposerScripts::postUpdate",
"php artisan vendor:publish --tag=public --force",
"php artisan optimize"
],
त्रुटि कब हुई? –
'संगीतकार अद्यतन' या 'संगीतकार पोस्ट-अपडेट-सीएमडी' के माध्यम से निष्पादित करता है जिसमें लिरावेल एप्लिकेशन बनाने वाली स्क्रिप्ट शामिल होती है। – imclickingmaniac
'संगीतकार निदान' क्या कहता है? –