2017-06-26 3 views
1

Wir sind dabei zu versuchen, all unsere Drupal-Module, die nicht mit Composer installiert wurden, in Composer zu verwalten.dompdf kann nicht über Composer in Drupal 8 aktualisiert werden.

  • Komponist: 1.4.12
  • Drupal: 8.3.1

Nach Komponisten Cache zu löschen, führten wir das folgende:

./composer require dompdf/dompdf; 

Das gibt:

./composer.json has been updated 
> DrupalProject\composer\ScriptHandler::checkComposerVersion 
Loading composer repositories with package information 
Updating dependencies (including require-dev) 
Your requirements could not be resolved to an installable set of packages. 

    Problem 1 
    - Can only install one of: phenx/php-svg-lib[v0.2, 0.1]. 
    - Can only install one of: phenx/php-svg-lib[v0.2, 0.1]. 
    - Can only install one of: phenx/php-svg-lib[v0.2, 0.1]. 
    - dompdf/dompdf v0.8.0 requires phenx/php-svg-lib 0.2.* -> satisfiable by phenx/php-svg-lib[v0.2]. 
    - Installation request for dompdf/dompdf ^0.8.0 -> satisfiable by dompdf/dompdf[v0.8.0]. 
    - Installation request for phenx/php-svg-lib (locked at 0.1) -> satisfiable by phenx/php-svg-lib[0.1]. 

Installation failed, reverting ./composer.json to its original content. 

Es scheint wie der Profi pro Sache zu tun wäre, nicht "phenx/php-svg-lib" auf Version 0.1 zu sperren, dann update dompdf, aber wenn wir dompdf composer.json Datei zu Phenx/php-svg-lib Version 0.2 ändern. *, clearcache , dann versuchen Sie erneut, wir erhalten den gleichen Fehler wie oben, der immer noch auf die Sperre bei 0.1 verweist. Ich habe auch bestätigt, dass dompdf das einzige Herstellermodul ist, das phenx/php-svg-lib verwendet.

Gibt es auch einen Grund, warum "Kann nur eine von installieren" wird dreimal aufgeführt?

Vielen Dank im Voraus für einen Rat.

Antwort

2

Es scheint, als ob dieses Problem beim Update dompdf von Version 0.7.0 auf 0.8.0 auftritt. Aus irgendeinem Grund funktioniert das Update einwandfrei mit Composer 1.2.x, aber führt zu dem obigen Fehler mit Version 1.4.x.

Das Update, das für mich den Job tat, war

"dompdf/dompdf": "^0.7.0" 

aus der composer.json Datei zu entfernen, und dann laufen:

composer update 

Das Ergebnis etwas sein sollte:

> DrupalProject\composer\ScriptHandler::checkComposerVersion 
Loading composer repositories with package information 
Updating dependencies (including require-dev) 
Package operations: 0 installs, 0 updates, 3 removals 
    - Removing dompdf/dompdf (v0.7.0) 
    - Removing phenx/php-font-lib (0.4) 
    - Removing phenx/php-svg-lib (0.1) 
Writing lock file 
Generating autoload files 

Dann benötigen Sie eine neue Version:

composer require dompdf/dompdf 
+0

Vielen Dank. Das hat perfekt funktioniert. – AlwaysLearning

Verwandte Themen