[TYPO3-german] Autoloader schlägt fehl.

Birgit lists at berlin-typo3.de
Wed Jun 26 15:16:24 CEST 2019


Hallo Rainer,

was für eine Extension autoloader? Das ist im Core enthalten.

Autoloader  legt in v.9.5.x seine Dateien mit den registrierten Classes an unter:

typo3conf/autoloader/
autoload_classaliasmap.php
autoload_classmap.php
autoload_psr4.php

Da müssten die Angaben zu deiner Extension „automatisch“ drin stehen, wenn  derAutoloader refresht wurde.

Die Konvention ist:

extension_name/Classes/Controller/MyController.php

Im Controller ganz oben muss deklariert werden:

namespace VendorName\ExtensionName\Controller;

class MyController extends AbstracController {}

Name von class und Dateiname müssen übereinstimmen für Autoload und der Pfad muss stimmen.


Viele Grüße
Birgit



> Am 26.06.2019 um 14:31 schrieb Rainer Schleevoigt <rainer.schleevoigt at uni-hamburg.de>:
> 
> Hallo Birgit,
> 
> ich habe TYPO3 CMS 9.5.7
> 
> On 26.06.19 14:26, Birgit wrote:
>> Hallo Rainer,
>> welche TYPO3 Version - und hast du die Extension deaktiviert und wieder aktiviert nach dem Hinzufügen des Controllers oder das Autoload-Refresh im Installtool bzw. Backend-Modul durchgeführt?
> 
> ich habe einfach eine Zip-Datei ausgepackt und dann mit dem Extensionmanager das Ding aktiviert. Es gibt noch ca. 20 weitere Extensions in der Seite.
>> Der Autoloader erkennt dann eigentlich automatisch die Classes in den Standardpfaden.
>> Da musst du nichts extra einbinden.
>> In TYPO3 9.x lege ich grundsätzlich für jede eigene Extension eine composer.json an.
>> Kannst du dir z.B. in EXT:news ansehen.
>> {
>>     "name": „vendor/extension-name",
>>     "type": "typo3-cms-extension",
>>     "description": "",
>>     "keywords": ["TYPO3 CMS"],
>>     "version": "9.0.0",
>>     "require": {
>>         "typo3/cms-core": "^9.5"
>>     },
>>     "autoload": {
>>         "psr-4": {
>>             „Vendor\\ExtensionName\\": "Classes/"
>>         }
>>     }
>> }
> Ist bei mir auch so.
> 
> 
>> In die emconf.php schreibe ich das nicht rein.
>> Steht denn etwas in den Dateien unter typo3conf/autoload/ drin - und ist vielleicht nur ein Buchstabe falsch o.ä.?
> es gibt eine Extension autoloader
> Das mit den Typo habe ich schon überprüft
>> Vendor überall richtig angegeben?
> Was mich wundert: vendorName ist nirgens definiert, wird nur benutzt.
>> Viele Grüße
>> Birgit
>>> Am 26.06.2019 um 13:41 schrieb Rainer Schleevoigt <rainer.schleevoigt at uni-hamburg.de>:
>>> 
>>> Hallo Gemeinde,
>>> 
>>> in meiner /ext_emconf.php/ "meiner" Extension steht:
>>> 
>>> /'autoload' => [//
>>> //        'psr-4' => [//
>>> //            ['Subugoe\\Find\\' => 'Classes'],//
>>> //        ],//
>>> //   ],/
>>> 
>>> In meinem Folder gibt es /Classes/Controller/SearchController.php/
>>> 
>>> 
>>> Und dennoch wird, wenn ich eine Seite, die das Plugin enthält das geworfen:
>>> 
>>> /Class Subugoe\Find\Controller\SearchController does not exist. Reflection failed./
>>> 
>>> Was habe ich übersehen. Es ist ein klassisches, composerloses Projekt.
>>> 
>>> So binde ich den Autoloader ein:
>>> 
>>> /require_once \TYPO3\CMS\Core\Core\Environment::getPublicPath() . '/typo3_src/vendor/autoload.php';//
>>> /
>>> 
>>> 
>>> Was läuft schief? Was habe ich übersehen? Ich sitzte jetzt schon den zweiten Tag dran und sehe noch nichts ...
>>> 
>>> 
>>> Gruss Rainer
>>> 
>>> 
>>> 
>>> -- 
>>> Dipl.-Ing. Rainer Schleevoigt
>>> Staats- und Universitaetsbibliothek Hamburg Carl von Ossietzky
>>> IT, Forschung und Entwicklung
>>> „Hamburg Open Science“ DTO
>>> Von-Melle-Park 3, 20146 Hamburg
>>> Telefon (040) 428382590 | Fax (040) 41345070
>>> Mail: rainer.schleevoigt at sub.uni-hamburg.de
>>> http://www.sub.uni-hamburg.de
>>> 
>>> _______________________________________________
>>> TYPO3-german mailing list
>>> TYPO3-german at lists.typo3.org
>>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>> _______________________________________________
>> TYPO3-german mailing list
>> TYPO3-german at lists.typo3.org
>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
> 
> -- 
> Dipl.-Ing. Rainer Schleevoigt
> Staats- und Universitaetsbibliothek Hamburg Carl von Ossietzky
> IT, Forschung und Entwicklung
> „Hamburg Open Science“ DTO
> Von-Melle-Park 3, 20146 Hamburg
> Telefon (040) 428382590 | Fax (040) 41345070
> Mail: rainer.schleevoigt at sub.uni-hamburg.de
> http://www.sub.uni-hamburg.de
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german



More information about the TYPO3-german mailing list