TYPO3 – Cargando bibliotecas externas en mi extensión Extbase con compositor funciona en context de desarrollo pero no en producción

Estoy usando TYPO3 6.2.26, agregué a mi extensión una biblioteca externa (sinergi / browser-detector) usando el compositor. Tenemos dos serveres, uno para desarrollo y otro para producción. El problema aparece en el context de producción, pero en el trabajo de desarrollo es excelente.

Tengo la siguiente estructura en ambos serveres (subversión git):

myext/Resources/Private/composer.json myext/Resources/Private/Libraries/autoload.php (generate by composer) myext/Resources/Private/Libraries/sinergi/... myext/Resources/Private/Libraries/composer/... (generate by composer) myext/ext_autoload.php 

Yo cargo el cargador del compositor en ext_autoload.php:

 require __DIR__ . '/Resources/Private/Libraries/autoload.php'; 

Mi compositor.json se ve así:

 { "name": "vendor/vendor", "description": "My description", "type": "library", "require-dev": { "sinergi/browser-detector": "^6.1" }, "config": { "vendor-dir": "Libraries" }, "authors": [ { "name": "xxx", "email": "xxx" } ] } 

Con estas configuraciones, funciona sin problemas en el entorno de desarrollo. En producción ocurre una situación extraña, cuando elimino el caching, funciona solo una vez, en la segunda vez que el server web devuelve un error 500:

 PHP Fatal Error: class Sinergi\\BrowserDetector\\...not found... 

Intenté alguna solución que fundé en Internet como:

  1. Agregando a mi composer.json:

    "autocarga": "prs-4": {"Sinergi \ BrowserDetector \": "Bibliotecas / sinergi / browser-detector / src /"}

  2. Volcado de la carga automática

    compositor dump-autoload

  3. Deshabilitar opcache

  4. Eliminando composer.lock y nueva installation

Pero, el problema todavía está allí solo en producción. También elimino el contenido del directory typo3temp, y luego funciona una vez, pero en el segundo 500 Error. ¿Alguien sabe qué puedo hacer?

No sé cómo terminan tus files en producción, pero debes usar

 "require": { "sinergi/browser-detector": "^6.1" }, 

en lugar de require-dev , de lo contrario, es solo para dev.