2016-04-20 10 views
9

mam struktura katalogów tak:Nie można uzyskać kompozytor „ścieżka” repozytorium pracować

composer.json < Main 
    packages/ 
    balunker/ 
     testpackage/ 
     composer.json < Package 
     src/ 
      TestPackage.php 

Głównym composer.json wygląda następująco:

{ 
    "name": "vagrant/composer-test", 
    "repositories": [ 
     { 
      "type": "path", 
      "url": "packages/*/*" 
     } 
    ], 
    "require": { 
     "balunker/testpackage": "*" 
    } 
} 

Choć pakiet composer.json wygląda tak :

{ 
    "name": "balunker/testpackage", 
    "autoload": { 
    "psr-4": { 
     "Balunker\\": "src/" 
    } 
    } 
} 

Na composer update Po prostu otrzymuję komunikat, że pakiet Nie można rozwiązać. Żadne dowiązania symboliczne nie są tworzone i żaden pakiet nie jest zainstalowany. Dosłownie poświęciłem połowę dnia na to, bezskutecznie.

Przesłałem również szczegółowe dane na ten temat: composer update -vvv: http://pastebin.com/mMRHsACk.

Moja wersja dla kompozytora jest najnowsza (od 20 kwietnia 2016 o 14:39 czasu UTC) i wszystko to działa w Vagrant (Debian).

WSZYSTKIE zalecenia od tego miejsca są bardzo mile widziane. Naprawdę nie wiem, co jeszcze mogę zrobić.

Odpowiedz

22

Wysłałem również problem na Github i okazuje się, że dokumentacja jest trochę myląca. Mówi:

{ 
    "repositories": [ 
     { 
      "type": "path", 
      "url": "../../packages/my-package" 
     } 
    ], 
    "require": { 
     "my/package": "*" 
    } 
} 

Jednakże, jeśli masz tylko lokalne repo bez wydań, trzeba użyć:

{ 
    "repositories": [ 
     { 
      "type": "path", 
      "url": "../../packages/my-package" 
     } 
    ], 
    "require": { 
     "my/package": "dev-master" 
    } 
} 

Wersja dev-master jest kluczem tutaj (biorąc pod uwagę, że pracujesz na wzorcu gałąź). Było to lekko irytujące, ale dzięki pomocnym współpracownikom z kompozytu mogłem w końcu opanować to.

Mam nadzieję, że może to pomóc komuś w przyszłości.

Powodzenia!

+1

Dla mnie, sztuczka polegała na dodaniu do kompozytu ['" minimalnej stabilności ":" dev "'] (https://getcomposer.org/doc/04-schema.md#minimum-stability). file –

+1

@BradKent Gorąco zniechęciłbym się do używania '' minimum-stability ":" dev "', ponieważ oznacza to: Chcesz ze wszystkich zależności najnowszą niestabilną wersję. Przedrostek 'dev-' lub przyrostek '-dev' zmienia to tylko dla jednego pakietu. – Nemo64

+0

Dopóki masz również "" prefer-stable ": true', jesteś w porządku. Będzie używać pakietów deweloperskich tylko wtedy, gdy będzie to konieczne do zaspokojenia zależności. – hackel

Powiązane problemy