Ergebnis 1 bis 16 von 16

Thema: [gelöst] Fehlermeldung im Composer nach Umzug von XAMPP ins Web

  1. #1
    Contao-Fan
    Registriert seit
    17.11.2012.
    Beiträge
    528

    Standard [gelöst] Fehlermeldung im Composer nach Umzug von XAMPP ins Web

    Hallo

    Heute habe ich eine Contao 3.2.5-Installation, die u.a. den Composer umfasst von XAMPP auf www.peter-flueckiger.net gezügelt. Wenn ich in der Packetverwaltung eine Position anklicke, erhalte ich folgende Meldung:

    Fatal error: Uncaught exception UnexpectedValueException with message RecursiveDirectoryIterator::__construct(E:\xampp\h tdocs\contao_mm_comp\composer\packages) [recursivedirectoryiterator.construct.php]: failed to open dir: No such file or directory thrown in phar://composer/composer.phar/src/Composer/Repository/ArtifactRepository.php on line 51

    #0 phar://composer/composer.phar/src/Composer/Repository/ArtifactRepository.php(51): RecursiveDirectoryIterator->__construct('E:\xampp\htdocs...')
    #1 phar://composer/composer.phar/src/Composer/Repository/ArtifactRepository.php(44): Composer\Repository\ArtifactRepository->scanDirectory('E:\xampp\htdocs...')
    #2 phar://composer/composer.phar/src/Composer/Repository/ArrayRepository.php(170): Composer\Repository\ArtifactRepository->initialize()
    #3 phar://composer/composer.phar/src/Composer/DependencyResolver/Pool.php(163): Composer\Repository\ArrayRepository->getPackages()
    #4 system/modules/!composer/ContaoCommunityAlliance/Contao/Composer/Controller/AbstractController.php(180): Composer\DependencyResolver\Pool->addRepository(Object(Composer\Repository\Composit eRepository))
    #5 system/modules/!composer/ContaoCommunityAlliance/Contao/Composer/Controller/DetailsController.php(122): ContaoCommunityAlliance\Contao\Composer\Controller \AbstractController->getPool()
    #6 system/modules/!composer/ContaoCommunityAlliance/Contao/Composer/Controller/DetailsController.php(92): ContaoCommunityAlliance\Contao\Composer\Controller \DetailsController->searchPackage('contao-communit...')
    #7 system/modules/!composer/ContaoCommunityAlliance/Contao/Composer/ClientBackend.php(200): ContaoCommunityAlliance\Contao\Composer\Controller \DetailsController->handle(Object(Contao\Input))
    #8 system/modules/core/classes/Backend.php(271): ContaoCommunityAlliance\Contao\Composer\ClientBack end->generate()
    #9 contao/main.php(136): Contao\Backend->getBackendModule('composer')
    #10 contao/main.php(287): Main->run()
    #11 {main}
    Es scheinen also noch XAMPP-'Rückstände' voranden zu sein. Kann mir jemand sagen, ob ich diese beseitigen/korrigieren kann? Und wenn ja, wo?
    Oder ist das geschilderte Prozedere grundsätzlich zum Scheitern verurteilt?


    Herzlichen Dank für alle Hilfe?


    PS: Ich bekenne mich als Hobby-Contaoer und verstehe es, wenn die Spezialisten derzeit wichtigere Probleme zu lösen haben
    Geändert von peter.fl (11.02.2014 um 19:28 Uhr)

  2. #2
    Contao-Urgestein
    Registriert seit
    10.07.2010.
    Beiträge
    4.403
    User beschenken
    Wunschliste

    Standard

    Hast Du in den einstellungen des Composers selber geschaut ob dort einen Pfad irgendwo drin ist?

  3. #3
    Contao-Fan
    Registriert seit
    17.11.2012.
    Beiträge
    528

    Standard

    In Paketverwaltung > Einstellungen > Expertenmodus habe ich folgenden Eintrag gefunden: composer_expertenmodus.PNG. Volltreffer.
    Diese Pfadangabe kommt 2x vor.

    Nun bin ich aber kein Experte: Wie soll ich die Pfadangabe umschreiben? Könnte www.peter-flueckiger.net\\composer\\packages gehen?

  4. #4
    Maintainer Avatar von xtra
    Registriert seit
    02.07.2009.
    Ort
    Tuebingen
    Beiträge
    2.007
    User beschenken
    Wunschliste

    Standard

    Da musst du deine composer/composer.json von Hand bearbeiten (im Komposer der Expertenmodus).

    Darin findest du in etwa folgendes:
    Code:
      {
        "type": "artifact",
        "url": "E:\xampp\htdocs\contao_mm_comp\composer\packages"
      }
    Diesen Teil entfernst du einfach.
    Ggf. musst du in der Zeile davor noch ein Komma am Ende entfernen.
    Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

  5. #5
    Contao-Fan
    Registriert seit
    17.11.2012.
    Beiträge
    528

    Standard

    Habe die Anpassung in der composer.json gemacht - es/er funktioniert!

    Weiter unten erscheint in der composer.json nochmals der alte Pfad:
    "migrated": "done",
    "artifactPath": "E:\\xampp\\htdocs\\contao_mm_comp\\composer\\pack ages"
    Dieser Teil muss offensichtlich stehen bleiben.

    Herzlichen Dank!

  6. #6
    Maintainer Avatar von xtra
    Registriert seit
    02.07.2009.
    Ort
    Tuebingen
    Beiträge
    2.007
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von peter.fl Beitrag anzeigen
    Weiter unten erscheint in der composer.json nochmals der alte Pfad:
    Dieser Teil muss offensichtlich stehen bleiben.
    Den kannst du auch entfernen, er betrifft nur Windows.
    Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

  7. #7
    Contao-Fan
    Registriert seit
    17.11.2012.
    Beiträge
    528

    Standard

    Nun bin ich am Üben...

    Wenn ich im Feld Paketname oder Suchbegriff die Bezeichnung inserttags eingebe und dann suche, erhalte ich nachfolgende Meldung. Hierbei ist das Paket inserttags nicht installiert, bzw, ich habe es vorher deinstalliert.

    Fatal error: Uncaught exception Composer\Downloader\TransportException with message The "https://packagist.org/search.json?q=inserttags" file could not be downloaded (HTTP/1.1 504 Gateway Time-out) thrown in phar://composer/composer.phar/src/Composer/Util/RemoteFilesystem.php on line 258

    #0 [internal function]: Composer\Util\RemoteFilesystem->callbackGet(9, 2, 'HTTP/1.1 504 Ga...', 504, 0, 0)
    #1 phar://composer/composer.phar/src/Composer/Util/RemoteFilesystem.php(143): file_get_contents('https://packagi...', false, Resource id #118)
    #2 phar://composer/composer.phar/src/Composer/Util/RemoteFilesystem.php(77): Composer\Util\RemoteFilesystem->get('https://packagi...', 'https://packagi...', Array, NULL, false)
    #3 phar://composer/composer.phar/src/Composer/Repository/ComposerRepository.php(159): Composer\Util\RemoteFilesystem->getContents('https://packagi...', 'https://packagi...', false)
    #4 phar://composer/composer.phar/src/Composer/Repository/CompositeRepository.php(105): Composer\Repository\ComposerRepository->search('inserttags', 0)
    #5 system/modules/!composer/ContaoCommunityAlliance/Contao/Composer/Controller/SearchController.php(120): Composer\Repository\CompositeRepository->search('inserttags', 0)
    #6 system/modules/!composer/ContaoCommunityAlliance/Contao/Composer/Controller/SearchController.php(56): ContaoCommunityAlliance\Contao\Composer\Controller \SearchController->searchPackages(Array, 0)
    #7 system/modules/!composer/ContaoCommunityAlliance/Contao/Composer/ClientBackend.php(200): ContaoCommunityAlliance\Contao\Composer\Controller \SearchController->handle(Object(Contao\Input))
    #8 system/modules/core/classes/Backend.php(271): ContaoCommunityAlliance\Contao\Composer\ClientBack end->generate()
    #9 contao/main.php(136): Contao\Backend->getBackendModule('composer')
    #10 contao/main.php(287): Main->run()
    #11 {main}
    Ich lese etwas von 'kann nicht heruntergeladen werden' und 'Gateway Time-out' (interpretiere ich als Zeitüberschreitung). Und 'https://..., false' tönt nach falscher URL.

    Muss ich nach meinem Umzug der Installation von XAMPP ins Web in diesem Zusammenhang etwas anpassen? Wenn ja, wo und was? Oder hat es etwas mit den Composer-Einstellungen Minimale Stabilität und Bevorzugte Installationsformen zu tun?

  8. #8
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.123

    Standard

    Schau mal hier

  9. #9
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.451
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    packagist.org ist down ... deshalb steht im dem Fehler: 04 Gateway Time-out

    Also, abwarten bis packagist wieder da ist.

    Grüße, Cliff

  10. #10
    Contao-Fan
    Registriert seit
    17.11.2012.
    Beiträge
    528

    Standard

    Zuerst: Danke allen, die mir bis hieher geholfen haben!

    Inzwischen habe ich mehrere Pakete deinstalliert und erfolgreich wieder installieret. Zurzeit erweist sich dk_caroufredsel noch widerspenstig. Beim Installieren erhalte ich folgende Meldung:
    Fatal error: Uncaught exception Exception with message Cannot create symlink TL_ROOT/system/modules/dk_caroufredsel, file exists and is not a link thrown in phar://composer/composer.phar/src/Composer/Plugin/PluginManager.php(225) : eval()'d code on line 808

    #0 phar://composer/composer.phar/src/Composer/Plugin/PluginManager.php(225) : eval()'d code(543): ContaoCommunityAlliance\ComposerInstaller\ModuleIn staller_composer_tmp0->updateSources(Array, Object(Composer\Package\CompletePackage))
    #1 phar://composer/composer.phar/src/Composer/Installer/LibraryInstaller.php(86): ContaoCommunityAlliance\ComposerInstaller\ModuleIn staller_composer_tmp0->installCode(Object(Composer\Package\CompletePacka ge))
    #2 phar://composer/composer.phar/src/Composer/Installer/InstallationManager.php(153): Composer\Installer\LibraryInstaller->install(Object(Composer\Repository\InstalledFiles ystemRepository), Object(Composer\Package\CompletePackage))
    #3 phar://composer/composer.phar/src/Composer/Installer/InstallationManager.php(140): Composer\Installer\InstallationManager->install(Object(Composer\Repository\InstalledFiles ystemRepository), Object(Composer\DependencyResolver\Operation\Insta llOperation))
    #4 phar://composer/composer.phar/src/Composer/Installer.php(515): Composer\Installer\InstallationManager->execute(Object(Composer\Repository\InstalledFiles ystemRepository), Object(Composer\DependencyResolver\Operation\Insta llOperation))
    #5 phar://composer/composer.phar/src/Composer/Installer.php(210): Composer\Installer->doInstall(Object(Composer\Repository\InstalledFil esystemRepository), Object(Composer\Repository\CompositeRepository), Object(Composer\Repository\PlatformRepository), Array, false)
    #6 system/modules/!composer/ContaoCommunityAlliance/Contao/Composer/Controller/UpdatePackagesController.php(84): Composer\Installer->run()
    #7 system/modules/!composer/ContaoCommunityAlliance/Contao/Composer/ClientBackend.php(200): ContaoCommunityAlliance\Contao\Composer\Controller \UpdatePackagesController->handle(Object(Contao\Input))
    #8 system/modules/core/classes/Backend.php(271): ContaoCommunityAlliance\Contao\Composer\ClientBack end->generate()
    #9 contao/main.php(136): Contao\Backend->getBackendModule('composer')
    #10 contao/main.php(287): Main->run()
    #11 {main}
    Beim Interpretieren derselben komme ich definitiv nicht weiter. Ein Link kann nicht erstellt werden... ? Aber wo und welcher?


    Danke für alle Hilfe.

  11. #11
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.123

    Standard

    Das steht doch da, wo der Link hin soll: system/modules/

    Wenn du bei den Composer Einstellungen als Bevorzugte Installationsform "Quellen" aktiviert hast, werden die Extensions in system/modules/ nicht tatsächlich installiert, sondern nur dorthin verlinkt. Die eigentlichen Dateien liegen dann im Ordner composer/vendor/dklemmt/contao_dk_caroufredsel. Wenn der Ordner dk_caroufredsel im Verzeichnis system/modules also schon existiert, dann schlägt die Composer-Link-setzen-Aktion fehl.

    Benenne in diesem Fall dk_caroufredsel im Ordner system/modules um (in z.B. dk_caroufredsel.backup) und starte die Aktion neu. Wenn dann das Setzen des Links gelingt, kannst du die ....backup wieder löschen.
    Zweite Möglichkeit: du wählst in den Composer Einstellungen als bevorzugte Installationsform "Archiv" aus, dann wird tatsächlich nach system/modules installiert und alles sollte ok sein.

  12. #12
    Contao-Fan
    Registriert seit
    17.11.2012.
    Beiträge
    528

    Standard

    Eben habe ich wieder [gelöst] in den Thread-Titel gesetzt und meine Signatur angepasst

    Herzlichen Dank für alle Tipps!

  13. #13
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.123

    Standard

    Leider sagst du uns nicht, wie du es gelöst hast - also wie?

  14. #14
    Contao-Fan
    Registriert seit
    17.11.2012.
    Beiträge
    528

    Standard

    Uff - entschuldigung:

    @cliffen: Abwarten hat sich bewährt - später, gegen Abend funktionierte der Zugang wieder
    @bizon: Entschlacken hat sich ebenfalls bewährt (dk_caroufredsel umbenennen), dann konnte ich das Paket installieren

    Wobei glasklar war der Lösungsweg nicht. Ich habe auch mit den Composer-Einstellungen geübt. Mit 'Minimale Stabilität = Entwickler Release' und 'Bevorzugte Installationsform = Auto' scheint es zu gehen. Was ich nicht hinbekommen habe sind die Karussels von dk_caroufredsel. Aber ich habe feststellen müssen, dass ich diese vermutlich schon auf XAMPP 'verloren' habe, aber es, weil ich Composer und Metamodels im Fokus hatte, gar nicht gemerkt habe. Es sind keine komplizierten Sachen, darum waren sie schnell nachgebaut.

    Mein Fazit als Hobby-Contaoeraner (Nicht-Programmierer): Kopf nicht verlieren, immer Sichern, es nochmals versuchen, Geduld haben, Varianten überlegen - und natürlich die Communty.


    Herzlichen Dank.

  15. #15
    Alter Contao-Hase Avatar von bizon
    Registriert seit
    16.06.2010.
    Beiträge
    1.123

    Standard

    Bevorzugte Installationsform = Auto
    Bislang war mir auch noch nicht klar, wie die Einstellung auto funktioniert. Warum es in deinem Fall nun Installation aus den Quellen bevorzugt, kann ich im Moment nicht erklären, denn das ist eigentlich die Entwicklerversion. Die Dateien werden deshalb in composer/vendor/entwicklername/extension/ installiert. Damit Contao das Ganze dennoch als installierte Extension betrachtet, müssen die Quelldateien nun von composer/vendor/.../... ins Extensionverzeichnis system/modules/... verlinkt werden.

    Den Link konnte der Composer aber nicht anlegen, weil es bereits eine Datei bzw. einen Ordner mit dem gleichen Namen, den eigentlich der Link bekommen sollte, gab (in Linux ist ein Ordner nichts anderes als eine Datei). Aber es war eben kein Link, weshalb ein Überschreiben nicht möglich war. Durch das Umbenennen wurde der Speicherplatz für den Link wieder frei. Für künftige Updates der Extension ist es jetzt kein Problem mehr, denn Links können Links auch wieder überschreiben.

    Ich hoffe, das trägt etwas zum Verständnis bei.

  16. #16
    Maintainer Avatar von xtra
    Registriert seit
    02.07.2009.
    Ort
    Tuebingen
    Beiträge
    2.007
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von bizon Beitrag anzeigen
    Bevorzugte Installationsform = Auto
    Bislang war mir auch noch nicht klar, wie die Einstellung auto funktioniert.
    Na dann will ich mal erlaeutern.
    Zitat Zitat von https://getcomposer.org/doc/04-schema.md#config
    preferred-install: Defaults to auto and can be any of source, dist or auto. This option allows you to set the install method Composer will prefer to use.
    source bedeutet, installiere bevorzugt via Quellcode (zumeist git, svn, hg, etc).
    dist hingegen besagt, man moechte bevorzugt releases (zumeist zip) haben.
    auto wiederum stoesst einige Entscheidungen an, nach welchem dann die Installationsform gewaehlt wird.

    Die Entscheidungsfindung bei einem zu betrachtenten Paket in der jeweils akuellsten (von den Einstellungen erlaubten) Version ist hierbei wie folgt:
    Wenn die Versionsnummer nicht angibt eine Entwicklungsversion zu sein, oder aber es keine Bezugsquelle fuer Quellcode gibt es jedoch eine Quelle fyr dist gibt => Nimm dist.
    Ansonsten, wenn das Paket eine Bezugsquelle fyr Quellcode besitzt, dann nimm diese. => Nimm source.
    Wenn beides nicht zutrifft, es also weder dist noch source gibt, dann bricht composer mit einer Fehlermeldung ab, das solltet ihr also nie sehen.

    Um es nun noch mal in nicht so kompliziert zu sagen (und staaaark verallgemeinert):
    Wenn eine stabile Version installiert werden soll und eine url bekannt ist wie man ein zip holen kann, dann nimm zip, ansonsten nimm git.

    Zitat Zitat von bizon Beitrag anzeigen
    Ich hoffe, das trägt etwas zum Verständnis bei.
    Hoffe ich ebenfalls.
    Bedenke stets: Wenn Du ungenaue oder unzureichende Angaben machst, so koennte dies die Bearbeitung deiner Frage endlos verzoegern (oder sogar dazu fyhren, dass ich zu viel nachdenken muss und die Antwort vergesse!). Kein Support per PN.

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •