DI nemůže najít Extension, 2 verze projektu, jedna funkční

před 2 lety

MartinVolenec
Člen | 29
+
0
-

Dobrý den,

tvořím stránky, kde využívám vícejazyčnost Kdyby/Translation.

První verzi těchto stránek jsem vytvořil doma. Tu jsem nahrál na server a vše funguje. Včetně implementovaného a použitého Kdyby/Translation. Vše bez chyby.
Doma vyvíjím na PHP 7.1. Windows 7. Na serveru běží taktéž PHP 7.1.

Poté jsem si projekt stáhl v kanclu a udělal do něj spousty změn. Avšak pouze front-endové změny. Takže s nastavením / configy jsem vůbec nepracoval.
Poté jsem projekt nahrál znovu celý na web. A nyní mi Laděnka hází následující chybu:
Class ‚Kdyby\Translation\DI\TranslationExtension‘ not found
V kanclu už mám Xampp s PHP 7.2. Windows 10. No localhostu vše běží v pohodě. Ale pouze na produkčním serveru hází výše zmíněnou chybu.
Vůbec tomu nerozumím. Nikdy jsem s tímhle nesetkal.
Jediné co mě napadá, tak by mohl být problém s kódováním souboru.

extensions:
    translation: Kdyby\Translation\DI\TranslationExtension
translation:
    default: cs
    fallback: [cs_CZ, cs]
    debugger: on

Nastavení v BasePresenteru stejné jako v dokumentaci.

Nenapadá někoho v čem by mohl být problém ?
Pokud nahraji první, stránky fungují (z domova). Ale pokud první verzi nahraji z kanclu, tak již nefungují.

Pokud by bylo potřeba více ukázek kódu(což asi bude), tak přidám.

Děkuji.

Editoval MartinVolenec (22. 3. 2018 14:34)

před 2 lety

CZechBoY
Člen | 3452
+
0
-

Nahraj znovu složku vendor.

před 2 lety

MartinVolenec
Člen | 29
+
0
-

To nepomohlo. A navíc jsem to už jednou zkusil.

https://www.zau.technology/

Zapnul jsem Laděnku. Můžete si projít chybu.

před 2 lety

Pavel Kravčík
Člen | 994
+
0
-

A existuje tam ten soubor? U nás server při uploadu občas tiše přejde ClassLoader z nějakého důvodu.

před 2 lety

MartinVolenec
Člen | 29
+
0
-

Soubor na serveru skutečně je. A to pod touto cestou:
vendor/kdyby/translation/src/di/TranslationExtension.php

Soubor má namespace Kdyby\Translation\DI;
Takže by tohle mělo ladit.

V cache mám vytvořený:
Nette.Configurator
Nette.RobotLoader
Ale nevím, jestli jsou vytvořeny kompletně.

Nevím, jestli ten ClassLoader přejde i můj server. Každopádně mám VPS a běží tam více stránek na Nette.
Jak to poznám ? :-)

před 2 lety

nightfish
Člen | 156
+
0
-

Zkus promazat adresář Nette.RobotLoader v tempu.

před 2 lety

MartinVolenec
Člen | 29
+
0
-

Všechny různý kombinace mazání cache jsem již zkoušel.

Napadlo, jestli spíš není problém v kódování nebo v něčem podobném.
Jak jsem říkal, pokud první verzi nahraji z domova, vše funguje. Ale pokud tu samou nahraji z kanceláře, už nefunguje.

před 2 lety

iguana007
Člen | 986
+
0
-

Zkusil by jsem v kancelari composer update, opetovny upload a smazani cache.

před 2 lety

MartinVolenec
Člen | 29
+
0
-

@iguana007 Taktéž jsem již udělal (a teď znovu) ale bohužel nic.

před 2 lety

MartinVolenec
Člen | 29
+
0
-

Napadlo mě, jestli nemůže být nějaký problém v Composeru / composer.json. Sice je používám, ale nejsem v nich přeborník.
Teď jsem zkusil v kanceláři nahrát jiné stránky, které již dávno běží, jsou na Nette 2.4 a používají Kdyby/Translation.
Taktéž nefungují.

Na https://www.zau.technology/ je k dispozici momentální error. Nezná tu cestu, protože hledá Bridges, ale na serveru je bridges.
Úplně stejná chyba naskočila i u těch prvních stránek. Hledaly se cesty, který neexistovali. A to jsem vyřešil právě přes composer update a dumpautoload. Poté začala naskakovat Class ‚Kdyby\Translation\DI\TranslationExtension‘ not found.

před 2 lety

MartinVolenec
Člen | 29
+
0
-

Přikládám composer.json:

{
	"name": "nette/web-project",
	"description": "Nette: Standard Web Project",
	"keywords": ["nette"],
	"type": "project",
	"license": ["MIT", "BSD-3-Clause", "GPL-2.0", "GPL-3.0"],
	"require": {
		"php": ">= 5.6",
		"nette/application": "^2.4",
		"nette/bootstrap": "^2.4.2",
		"nette/caching": "^2.5",
		"nette/database": "^2.4",
		"nette/di": "^2.4",
		"nette/finder": "^2.4",
		"nette/forms": "^2.4",
		"nette/http": "^2.4",
		"nette/mail": "^2.4",
		"nette/robot-loader": "^2.4 || ^3.0",
		"nette/security": "^2.4",
		"nette/utils": "^2.4",
		"latte/latte": "^2.4",
		"tracy/tracy": "^2.4",
		"kdyby/translation": "^2.5"
	},
	"require-dev": {
		"nette/tester": "^2.0"
	},
	"minimum-stability": "stable",
	"config": {
		"platform": {
			"php": "5.6"
		}
	}
}

Jinak používám PHPStorm. Nepřidává tam něco, co by to mohlo pokazit ?

Editoval MartinVolenec (22. 3. 2018 16:46)

před 2 lety

MartinVolenec
Člen | 29
+
0
-

Downgrade Composer a přeinstalace Kdyby/Translation problém vyřešen.

Můžete uzavřít.