คำถามติดแท็ก composer-php

Composer เป็นโปรแกรมจัดการแพ็คเกจระดับแอปพลิเคชันสำหรับภาษาโปรแกรม PHP เป็นรูปแบบมาตรฐานสำหรับการจัดการอย่างง่ายดายโดยใช้การอ้างอิงโปรเจ็กต์ (ไลบรารี) ที่ใช้ PHP และได้รับแรงบันดาลใจอย่างมากจาก "npm" ของ Node.js และ "bundler" ของ Ruby ใช้กับแท็ก [php]

8
composer.lock ควรมุ่งมั่นที่จะควบคุมเวอร์ชันหรือไม่?
ฉันสับสนเล็กน้อยที่composer.lockใช้ในแอปพลิเคชันที่มีที่เก็บ ฉันเห็นหลายคนบอกว่าเราไม่ควร.gitignore composer.lockออกจากที่เก็บ หากฉันอัปเดตห้องสมุดของฉันในสภาพแวดล้อมการพัฒนาของฉันฉันจะมีใหม่composer.lockแต่ฉันจะไม่สามารถอัปเดตไลบรารีเหล่านั้นเป็นการผลิตได้หรือไม่ มันจะไม่สร้างความขัดแย้งในไฟล์นี้หรือไม่?

15
วิธีลบแพ็คเกจออกจาก Laravel โดยใช้ผู้แต่ง
วิธีที่ถูกต้องในการลบแพ็คเกจออกจาก Laravel 4 คืออะไร? นานมาแล้วที่ฉันได้ลอง: นำการประกาศออกจากcomposer.json(ในส่วน "ต้องการ") ลบนามแฝงคลาสออกจาก app.php ลบการอ้างอิงใด ๆ ไปยังแพ็คเกจจากรหัสของฉัน :-) วิ่ง composer update วิ่ง composer dump-autoload ไม่ทำงาน! ฉันพลาดอะไรไปรึเปล่า? บางแพ็กเกจเผยแพร่การกำหนดค่าผ่านทาง "artisan config: publish ... " มีวิธี "เลิกเผยแพร่" หรือไม่

6
จะติดตั้งแพ็คเกจเฉพาะเวอร์ชั่นด้วยการใช้ Composer ได้อย่างไร?
ฉันกำลังพยายามติดตั้งแพ็คเกจรุ่นที่ระบุโดยใช้ Composer ฉันพยายามcomposer installแล้วcomposer requireแต่พวกเขากำลังติดตั้งแพ็คเกจล่าสุด จะทำอย่างไรถ้าฉันต้องการรุ่นที่เก่ากว่า

8
จะอัพเดตไลบรารีเดียวด้วย Composer ได้อย่างไร
ฉันต้องติดตั้งเพียง 1 แพ็คเกจสำหรับการแจกจ่าย SF2 ของฉัน (DoctrineFixtures) เมื่อฉันวิ่ง php composer.phar update ฉันเข้าใจ - Updating twig/twig (dev-master 39d94fa => v1.13.0) The package has modified files: M CHANGELOG M doc/filters/batch.test M doc/filters/index.rst M doc/filters/url_encode.rst M doc/functions/index.rst M doc/tags/index.rst M doc/tests/index.rst M lib/Twig/Autoloader.php M lib/Twig/Compiler.php M lib/Twig/CompilerInterface.php -10 more files modified, choose "v" to …

12
Laravel 5 - เมล็ดพันธุ์ช่าง [ReflectionException] คลาสเพลง TableSeeder ไม่มีอยู่
เมื่อฉันเรียกใช้db artisan db: เมล็ดฉันได้รับข้อผิดพลาดต่อไปนี้: [ReflectionException] Class SongsTableSeeder does not exist เกิดอะไรขึ้น? คลาส DatabaseSeederของฉัน: <?php use Illuminate\Database\Seeder; use Illuminate\Database\Eloquent\Model; class DatabaseSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { Model::unguard(); $this->call('SongsTableSeeder'); } } เพลงของฉันTableSeeder <?php // Composer: "fzaninotto/faker": "v1.4.0" use Faker\Factory …

30
นักแต่งเพลงต้องการหน่วยความจำไม่เพียงพอ PHP Fatal error: ขนาดหน่วยความจำที่อนุญาต 1610612736 ไบต์หมด
ฉันกำลังพยายามเพิ่ม HWIOAuthBundle ในโปรเจ็กต์ของฉันโดยเรียกใช้คำสั่งด้านล่าง composer require hwi/oauth-bundle php-http/guzzle6-adapter php-http/httplug-bundle HWIOAuthBundle github: https://github.com/hwi/HWIOAuthBundle เมื่อฉันพยายามเรียกใช้นักแต่งเพลงต้องการให้ฉันได้รับข้อผิดพลาดหน่วยความจำไม่เพียงพอ การใช้เวอร์ชัน ^0.6.0@dev สำหรับ hwi / oauth-bundle การใช้เวอร์ชัน ^1.2@dev สำหรับ php-http / guzzle6-adapter การใช้เวอร์ชัน ^1.10@dev สำหรับ php-http / httplug-bundle ./composer.json ได้รับการอัปเดตแล้ว การโหลดที่เก็บผู้แต่งพร้อมข้อมูลแพ็คเกจการอัปเดตการอ้างอิง (รวมถึงความต้องการ - dev) PHP Fatal error: ขนาดหน่วยความจำที่อนุญาตคือ 1610612736 ไบต์หมด (พยายามจัดสรร 67108864 ไบต์) ใน phar: ///usr/local/Cellar/composer/1.4.2/libexec/composer.phar/src/Composer/DependencyResolver/Solver php ในบรรทัด …

8
จะรับรายการแพ็คเกจที่ติดตั้งทั้งหมดพร้อมกับเวอร์ชั่นในผู้แต่งได้อย่างไร?
ฉันทำงานเกี่ยวกับโปรเจ็กต์ที่ใช้ Symfony 2.1 บนเครื่องของฉัน ฉันได้อัปโหลดไปยังเซิร์ฟเวอร์ของฉัน แต่เมื่อฉันลองและติดตั้งบันเดิลผู้ขายโดยใช้ Composer ฉันจะได้รับข้อผิดพลาดในการพึ่งพามาก น่าจะเป็นสิ่งที่เกี่ยวข้องกับ Symfony รุ่นล่าสุดที่เพิ่งวางจำหน่ายและcomposer.jsonไฟล์ของฉันไม่ได้ระบุหมายเลขรุ่นที่แน่นอน มีวิธีใดที่ฉันสามารถแสดงหมายเลขรุ่นของทุกอย่างบนเครื่องท้องถิ่นของฉันได้อย่างรวดเร็วหรือไม่? นี่คือไฟล์ composer.json ของฉัน (ซึ่งใช้ได้ดีจนกระทั่งเมื่อไม่กี่วันที่ผ่านมา): { "name": "symfony/framework-standard-edition", "description": "The \"Symfony Standard Edition\" distribution", "autoload": { "psr-0": { "": "src/" } }, "require": { "php": ">=5.3.3", "symfony/symfony": "2.1.*", "doctrine/orm": ">=2.2.3,<2.4-dev", "doctrine/doctrine-bundle": "1.0.*", "twig/extensions": "1.0.*", "symfony/assetic-bundle": "2.1.*", "symfony/swiftmailer-bundle": "2.1.*", "symfony/monolog-bundle": …
258 composer-php 

5
อะไรคือความแตกต่างระหว่าง PSR-0 และ PSR-4
เมื่อเร็ว ๆ นี้ฉันได้อ่านเกี่ยวกับเนมสเปซและประโยชน์ที่ได้รับ ขณะนี้ฉันกำลังสร้างโครงการใน Laravel และพยายามย้ายจากการโหลดอัตโนมัติในคลาสแผนที่ไปยังการกำหนดเนม อย่างไรก็ตามฉันไม่สามารถเข้าใจความแตกต่างที่แท้จริงระหว่าง PSR-0 และ PSR-4 ได้ ทรัพยากรบางอย่างที่ฉันได้อ่านคือ ... การต่อสู้ของ Autoloaders Laracasts การโหลดอัตโนมัติ PSR-4 PSR-0 PSR-4 สิ่งที่ฉันเข้าใจ: PSR-4 ไม่แปลงขีดล่างเป็นตัวคั่นไดเรกทอรี กฎเฉพาะของนักแต่งเพลงบางอย่างทำให้โครงสร้างไดเรกทอรีมีความซับซ้อนซึ่งจะทำให้การกำหนดเนมสเปซ PSR-0 เป็นแบบละเอียดและทำให้ PSR-4 ถูกสร้างขึ้น ตัวอย่างอธิบายความแตกต่างจะได้รับการชื่นชม

30
การเรียกคืนนักแต่งเพลง:“ ไม่สามารถเปิดไฟล์อินพุต: composer.phar”
ฉันใหม่เพื่อ symfony2 และการอ่านsymblog ในบทที่สามในขณะที่พยายามติดตั้งข้อมูลฉันลองใช้คำสั่ง: php composer.phar update แต่ฉันได้รับข้อผิดพลาด: Could not open input file: composer.phar ดังนั้นฉันจึงไปเล็กน้อยและพยายาม php composer.phar install แต่ยังคงได้รับข้อผิดพลาดเดียวกัน ดังนั้นโปรดแนะนำวิธีจัดการกับนักแต่งเพลงนี้เพื่อติดตั้งขอบเขตใหม่หรือบันเดิลเช่นการติดตั้งข้อมูลใน symfony2 โดยใช้ wamp

4
วิธีลบการอ้างอิงที่ไม่ได้ใช้ออกจากผู้แต่ง
ฉันติดตั้งแพ็คเกจด้วยผู้แต่งและติดตั้งแพ็คเกจอื่น ๆ เป็นการอ้างอิง ตอนนี้ฉันถอนการติดตั้งแพ็คเกจหลักด้วยcomposer remove packageauthor/packagenameแต่การอ้างอิงเก่าทั้งหมดไม่ได้ถูกลบออก ฉันคาดว่านักแต่งเพลงจะล้างข้อมูลและเก็บเฉพาะแพ็คเกจที่จำเป็นตามcomposer.jsonและการอ้างอิงของพวกเขาเท่านั้น ฉันจะบังคับให้นักแต่งเพลงทำความสะอาดและลบแพ็คเกจที่ไม่ได้ใช้ทั้งหมดได้อย่างไร
209 php  composer-php 

4
นักแต่งเพลง: ฉันจะติดตั้งการอ้างอิงอื่นโดยไม่อัปเดตตัวเก่าได้อย่างไร
ฉันมีโครงการที่มีการพึ่งพาไม่กี่และฉันต้องการติดตั้งอีก แต่ฉันต้องการให้คนอื่น ๆ ในแบบที่พวกเขาเป็น ดังนั้นฉันจึงแก้ไขcomposer.jsonแต่ถ้าฉันเรียกใช้composer installฉันจะได้ผลลัพธ์ต่อไปนี้: Installing dependencies from lock file Warning: The lock file is not up to date with the latest changes in composer.json. You may be getting outdated dependencies. Run update to update them. Your requirements could not be resolved to an installable set of packages. Problem …
196 composer-php 

15
ข้อผิดพลาดในการติดตั้งนักแต่งเพลง - ต้องใช้ ext_curl เมื่อเปิดใช้งานจริง
ฉันพยายามติดตั้ง Facebook PHP SDK ด้วย Composer นี่คือสิ่งที่ฉันได้รับ $ composer install Loading composer repositories with package information Installing dependencies (including require-dev) Your requirements could not be resolved to an installable set of packages. Problem 1 - Installation request for facebook/php-sdk dev-master -> satisfiable by facebook/php-sdk[dev-master]. - facebook/php-sdk dev-master requires ext-curl * …

5
วิธีการปรับใช้อย่างถูกต้องเมื่อใช้สวิตช์การพัฒนา / การผลิตของนักแต่งเพลง
นักแต่งเพลงมีตัวเลือกในการโหลดการอ้างอิงหลายอย่างเท่านั้นในขณะที่อยู่ในการพัฒนาดังนั้นเครื่องมือจะไม่ถูกติดตั้งในการผลิต (บนเซิร์ฟเวอร์สด) นี่คือ (ในทางทฤษฎี) มีประโยชน์มากสำหรับสคริปต์ที่ใช้ในการพัฒนาเท่านั้นเช่นการทดสอบเครื่องมือข้อมูลปลอมเครื่องมือดีบั๊กและอื่น ๆ วิธีที่จะไปคือการเพิ่มrequire-devบล็อกเพิ่มเติมด้วยเครื่องมือที่คุณต้องการใน dev: "require-dev": { "codeception/codeception": "1.6.0.3" } และจากนั้น (ในทางทฤษฎี) โหลดการพึ่งพาเหล่านี้ผ่าน composer install --dev ปัญหาและคำถาม: นักแต่งเพลงได้เปลี่ยนพฤติกรรมของinstallและupdateอย่างมากในปี 2013 require-devตอนนี้ - ติดตั้งตามค่าเริ่มต้น (!) อย่าลังเลที่จะสร้าง composer.json ด้วยrequire-devบล็อกและดำเนินการcomposer installในการทำซ้ำ ในฐานะที่เป็นวิธีที่ได้รับการยอมรับมากที่สุดในการใช้งานคือการผลักนักแต่งเพลงล็อค (ที่เก็บการตั้งค่าผู้แต่งปัจจุบันของคุณ) จากนั้นทำcomposer installบนเซิร์ฟเวอร์การผลิตสิ่งนี้จะติดตั้งสิ่งที่กำลังพัฒนาด้วย เป็นวิธีที่ถูกต้องในการปรับใช้นี้ โดยไม่ต้องติดตั้งการพึ่งพา -dev คืออะไร หมายเหตุ: ฉันพยายามสร้าง Q / A แบบบัญญัติขึ้นที่นี่เพื่อชี้แจงการปรับใช้นักแต่งเพลงแปลก ๆ รู้สึกอิสระที่จะแก้ไขคำถามนี้

7
วิธีการใช้ส้อมกับนักแต่งเพลง
นี่คือผู้แต่งของฉันฉันต้องการใช้ส้อมของ lessphp ในโครงการ Github "repositories": [{ "type": "package", "package": { "version": "dev-master", "name": "nodge/lessphp", "source": { "url": "https://github.com/Nodge/lessphp.git", "type": "git", "reference": "master" }, "autoload": { "classmap": ["lessc.inc.php"] } } }], "require": { "php": ">=5.3.3", "nodge/lessphp": "dev-master" }, แต่ฉันมีข้อผิดพลาดนี้เมื่อทำการอัปเดต: nodge / lessphp dev-master -> ไม่พบแพ็คเกจที่ตรงกัน ฉันไม่รู้ว่าจะต้องใช้ส้อมนี้อย่างถูกต้อง ... ข้อเสนอแนะใด ๆ

25
การอัปเดต PHP นักแต่งเพลง“ ไม่สามารถจัดสรรหน่วยความจำ” ข้อผิดพลาด (ใช้ Laravel 4)
ฉันไม่สามารถแก้ปัญหานี้ได้ ฉันใช้แผนพื้นฐาน Linode 1G RAM พยายามติดตั้งแพ็คเกจผ่านตัวแต่งเพลงและมันก็ไม่ยอมให้ฉัน ขีด จำกัด หน่วยความจำของฉันถูกตั้งค่าเป็น "-1" บน PHP.ini มีอะไรอีกบ้างที่ฉันสามารถทำได้เพื่อติดตั้งนี้? Loading composer repositories with package information Updating dependencies (including require-dev) - Installing thujohn/rss (dev-master df80a7d) Downloading: 100% PHP Fatal error: Uncaught exception 'ErrorException' with message 'proc_open(): fork failed - Cannot allocate memory' in phar:///usr/local/bin/composer/vendor/symfony/console/Symfony/Component/Console/Application.php:975 Stack trace: #0 …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.