我將簡短:TYPO3作曲家依賴衝突
我有一個TYPO3與作曲家安裝。
讓我們來看看TYPO3的require部分。
"require": {
"php": ">=5.5.0",
"ext-fileinfo": "*",
"ext-json": "*",
"ext-pcre": "*",
"ext-session": "*",
"ext-xml": "*",
"psr/log": "1.0.*@dev",
"pear/http_request2": "~2.2.1",
"swiftmailer/swiftmailer": "~5.4.1",
"symfony/console": "~2.7.0",
"symfony/finder": "~2.7.0",
"doctrine/instantiator": "~1.0.4",
"typo3/class-alias-loader": "^1.0",
"typo3/cms-composer-installers": "^1.2.8",
"psr/http-message": "~1.0",
"cogpowered/finediff": "~0.3.1",
"mso/idna-convert": "^0.9.1"
}
正如你可以看到TYPO3需要 「的symfony /控制檯」: 「〜2.7.0」 這樣就意味着:(> = 2.7 < = 2.8)
在它旁邊我跑的CakePHP與遷移自定義CakePHP部件的插件。
讓我們看看需要從數據庫遷移插件以及部分:
"require": {
"php": ">=5.4",
"robmorgan/phinx": "0.5.3",
"cakephp/cakephp": "~3.1"
},
沒有錯這裏先來看看,但讓我們去詳細,並有在「robmorgan細看/ phinx「:」0.5.3「。這個插件需要下列軟件包,我們再來仔細看看「phinx」中的composer.json。
"require": {
"php": ">=5.4",
"symfony/console": "~2.8|~3.0",
"symfony/config": "~2.8|~3.0",
"symfony/yaml": "~2.8|~3.0"
}
而現在,你可以看到這個包至少需要2.8「的symfony /控制檯」,但它不工作,因爲TYPO3需要它「〜2.7.0」,這意味着:(> = 2.7 < = 2.8)。
我想出了這個問題,但我不知道如何解決它。我只有一個解決方案,但它不是那麼好,它分叉TYPO3並編輯composer.json。但那是最後的選擇。
有沒有其他人有一個很好的方法來解決這個問題?
'在它旁邊運行一個CakePHP'爲什麼你的typo3和CakePHP項目在同一個回購中 - 或者你的意思是不同的東西(請編輯該問題以澄清「它旁邊」的含義)?您是否積極使用遷移? – AD7six
是的,我現在使用活動遷移導致mysql轉儲文件不是管理所有開發人員和開發/活動服務器上數據庫的最佳實踐。 – TatzyXY
簡短的回答是:TYPO3在應用程序/網站前面,但客戶也希望有一個很大的自定義部分,所以我開始編寫TYPO3-Extension後,我看到TYPO3 -Extension是,我決定將CakePHP 3.0加載到TYPO3-Extension中,這有點工作,但現在它的工作。我現在可以使用Cake的全部功能,例如我的Cake-Controllers/Tables/Entities/Views來編寫TYPO-Extension。在TYPO3-Extension上,我有CakeRequest-Object,並將Cake的全部生成結果作爲字符串返回。 Cake作爲TYPO3的供應商安裝。 – TatzyXY