Contao 3 Extension mit Contao 4 kompatibel machen
Hallo zusammen,
ich möchte eine Contao 3 Extension kompatibel zu Contao 4 machen. Dafür habe ich die composer.json entsprechend angepasst und die (einzige) Klasse der Extension PSR-4 kompatibel mit Namespaces versehen. Die Klasse liegt in src/, alle weiteren Contao-Moduldateien liegen in module/.
Code:
(...)
"require": {
"contao/core-bundle": "~3.5 || ~4.3",
"contao-community-alliance/composer-plugin": "~2.4 || ~3.0"
},
"autoload": {
"psr-4": {
"PresProg\\PwSuggestion": "src/"
}
},
"extra": {
"contao": {
"sources": {
"module": "system\\modules\\password-suggestion"
}
}
}
Ich habe eine lokale Contao 4 Installation und eine lokale Kopie der Extension in C:\development\contao_extensions\contao-password-suggestion. In der composer.json der Contao Installation habe ich das lokale Repository der Extension angegeben, wie hier im Forum beschrieben:
Code:
(...)
"repositories": [
{
"type": "path",
"url": "C:\\development\\contao_extensions\\contao-password-suggestion"
}
],
(...)
Wenn ich nun in der Contao 4 Installation das Paket installieren möchte, bricht Composer immer ab folgender Fehlermeldung, auf die ich mir keinen Reim machen kann:
Code:
[RuntimeException]
Package presprog/contao-password-suggestion cannot install to "C:\development\contao_extensions\contao-password-suggestion" inside its source at "C:\development\contao_extensions\contao-password-suggestion"
Leider komme ich an der Stelle nicht weiter. Für sachdienliche Hinweise wäre ich sehr dankbar ;)
Grüße
benzin
Edit: Ein bereits existierender Symlink in /vendor erklärt das Problem und die Fehlermeldung. Ich vermute, das dies noch ein Überbleibsel aus einem vorherigen fehlgeschlagenen Installationsversuch ist. Den Symlink manuell löschen lässt die Installation durchlaufen :)