2013-04-30 5 views
13

लेकिनसंगीतकार बनाने परियोजना स्थानीय पैकेज भंडार पर विफल रहता है मैं एक संगीतकार परियोजना का परीक्षण करने के लिए एक <em>स्थानीय</em> भंडार बनाने के लिए कोशिश कर रहा हूँ

composer create-project --repository-url=/path/to/packages.json vendor/project-name 

[UnexpectedValueException] 

Unknown package has no name defined [...] 

के साथ विफल हो मेरे packages.json है:

{ 
    "packages": { 
    "vendor/project-name": { 
     "dev-master": { 
     "name": "vendor/project-name", 
     "type": "project", 
     "version": "dev-master", 
     "source": { 
      "url": "/path/to/project/.git", 
      "type": "git" 
     } 
     } 
    } 
    } 
} 

के लिए, यह पर्याप्त होना चाहिए।

कोई सुराग?

उत्तर

17

इस निष्पादित और मुझे बताओ कि अगर यह बहुत आप के लिए काम करता है:

mkdir /tmp/project-name 
cd /tmp/project-name 
git init 
vim (or whatever you like) packages.json 

चिपकाएं और बचाने:

{ 
    "package": { 
     "name": "vendor/project-name", 
     "version": "1.0.0", 
     "source": { 
      "url": "/tmp/project-name/.git", 
      "type": "git", 
      "reference": "master" 
     } 
    } 
} 

निष्पादित करें:

echo '{ "name": "test/test", "version": "1.0.0", "dist": { "url": "http://dummy.com/dummy.zip", "type": "zip" } }' > composer.json 

git add packages.json composer.json 
git commit -a -m "first commit" 

और फिर अपने पैकेज बनाने:

composer create-project --repository-url=/tmp/project-name/packages.json vendor/project-name 
+0

क्षमा करें, यह इतना लंबा लगा, कि खूबसूरती से काम किया! आपको एक पैकेज के लिए वैकल्पिक वाक्यविन्यास कहां मिला? और, वैसे भी, यदि आप 'packages.json' में चेक नहीं करते हैं, फिर भी यह काम करता है और इसमें जेनरेट की गई प्रोजेक्ट में रिपोजिटरी परिभाषा शामिल नहीं है (जहां यह संबंधित नहीं है)। – Utaal

+0

हालांकि यह केवल एक पैकेज के लिए काम करता है और मैं अभी भी गाइड में वर्णित प्रारूप के साथ काम नहीं कर सकता। – Utaal

+0

सचमुच परीक्षण और त्रुटि से था। सिंटैक्स को खोदने के बाद मैं आपके जेसन पर वापस आ गया, यह समझने की कोशिश कर रहा था कि "पैकेज नाम" किस बारे में बात कर रहा था और मैंने केवल एक पैकेज के साथ छोटी चीजों को हटाने के लिए चीजों को हटाना शुरू कर दिया। और, मेरा विश्वास करो, "पैकेज" (एकवचन) एक टाइपो था, जिसने मुझे एलओएल बनाया। मुझे लगता है कि संगीतकार के लोगों के साथ एक शब्द पैकेज की समस्या को कुछ प्रकाश दे सकता है, निश्चित रूप से वहां कुछ गड़बड़ है। –

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