1 回答

TA貢獻1824條經驗 獲得超6個贊
基本問題是捆綁包的源代碼位于項目的 src 目錄下:
project
src
Ztest
ZtestBundle.php
這反過來導致應用程序的 config/services.yaml 文件自動裝配捆綁包的服務:
# project\config\services
App\:
resource: '../src/'
exclude:
- '../src/DependencyInjection/'
...
- '../src/Ztest' # Add this to fix the problem
排除捆綁包的源代碼解決了問題。應用程序級別的自動接線會覆蓋在捆綁包級別完成的任何手動接線。
當然,一般來說,如果您確實決定需要一個捆綁包,那么它的源代碼應該位于它自己的獨立目錄中:
project
src
src-ztest-bundle
為此,您還需要更新composer.json 的 psr-4 部分并運行“composer dump-autoload”。
請記住,在 Symfony 4+ 中,自定義捆綁包的唯一推薦用法是在多個 Symfony 應用程序之間共享代碼。在這種情況下,捆綁包最終應該位于它自己的存儲庫和作曲家包中。
但是,應用程序內部的自定義捆綁包仍然受支持,并且有時它們會很有用。
- 1 回答
- 0 關注
- 127 瀏覽
添加回答
舉報