在开发Laravel软件包时,我正在努力处理所需的依赖项。
在包中设置服务提供商时,您需要illuminate/support
包。如果您的包中包含控制台命令,则需要illuminate/console
包。
storage_path()
或config()
等全球助手怎么样?我找不到包含它们的照明包装。
为什么一个人只需要laravel/framework
的包裹?所有类和功能都可用。无论如何它都可以在项目中使用。
答案 0 :(得分:0)
当您需要仅在Laravel项目中使用该包时,通常需要laravel/framework
作为依赖项。
但跳过这些全局辅助函数并尝试使用直接函数调用几乎总是更好的主意。也许你可以降低你拥有的依赖数量。
如果不直接使用laravel/framework
作为依赖项,请确保测试包而不将其安装在普通的Laravel包中。小单元测试可以帮助测试功能。
我做了一个" Laravel"包。我也遇到过这个问题。也许你可以 看看它:https://github.com/markwalet/laravel-hashed-route
它仅使用以下Laravel特定依赖项:
"illuminate/config": "~5.5",
"illuminate/database": "~5.5",
"illuminate/support": "~5.5"