我正在使用带有配置配置文件的Sling Launchpad。最近我会添加对FileVault包(即zip文件)的支持。我添加了package
类型的项目并将其添加到我的配置文件中。不幸的是,它不支持这些文件类型。是否有任何人有同样的问题,如果根本不支持包,如何在Sling启动期间安装包?
我已经在Sling源代码中查看了OSGiInstaller
类,并且只有来自RegisteredResource
类的安装内容,它位于RegisteredResourcesList.ser
文件(某种二进制文件)中,但是我只能看到jar
个文件......
谢谢!
答案 0 :(得分:2)
我认为在Sling中没有开箱即用的支持,但OSGi安装程序确实提供了必要的钩子来支持新的资源类型,除了捆绑和配置。您需要实施ResourceTransformer
来分发vlt档案,InstallTaskFactory
从vlt档案中提取的文件中创建相关InstallTask
,并实施新的任务类型特定于vlt的文件类型。
如果你想这样做,最好先在Sling dev mailing list讨论设计。
答案 1 :(得分:0)
我找到了解决方案。 com.composum.sling.core/composum-sling-osgi-package-installer/${composum.version}
捆绑包具有ResourceTransformer
和InstallTaskFactory
服务的实现。如果将此捆绑包添加到您的配置模型中(其他组合捆绑包之后),并将com.composum.core.pckginstall
添加到LoginAdminWhitelist
,那么您将能够在创建Sling实例期间安装zip软件包。