java – 将Alfresco扩展包装为amp和jar有什么区别?

我想了解将Alfresco扩展包装为jar而不是将其打包为AMP的后果.我在建立alfesco.war using maven的背景下问这个问题

假设我有一个模块MyAlfresco,使用All in on Archetype创建.我想使用我的Foo扩展来扩展它.我的问题是:为什么我打包成AMP?

如果我将Foo打包为jar并将其标记为MyAlfresco的依赖项,则foo.jar将放在WEB-INF / lib中.

如果我将Foo打包为AMP,结果将是相同的(使用叠加),但maven构建将花费更长时间(使用叠加使得maven-war-plugin非常慢).

那么,在这种情况下是否有任何理由考虑将Foo打包为AMP?

解决方法:

作为per doc,JAR和AMP是两种不同的方法,将Maven放在一边.
简而言之,这主要是分销问题,可能是标准化问题.

JAR:

jar包含java类,有时还包含静态资源.它们通过重载现有类添加到Share / Alfresco.他们不得不在WEB-IF / lib中进行爆炸式战争.假设您使用Tomcat,您的应用程序永远不会被删除.

这不是常见的情况,至少不是一个令人满意的生产方式.

AMP

通用结构提供了一些“标准”开发,并利用Spring / Spring Surf集成.

此外,AMP和Alfresco工具提供了许多包含和使用扩展的机制.它使用module.properties来定义版本和依赖关系(就像maven一样).您可以为生产运算符(或任何管理团队)提供AMP,他们只需将AMP放在放大器目录中,启动apply_amp.sh(或bat),所有操作都应正确安装.

如果你给一个罐子,他们有很多方法可以包含它,有些人真的不推荐.所以你必须写一个如何.

好的,还有Maven?

Maven被整合,只有两年.它仍然是一些旧配置和许多开发方式.

如果您只想为社区或专业环境开发独立扩展,请考虑使用AMP扩展原型.

混合使用Share和Alfresco时,使用一体式原型,何时进行战争(不仅仅是给AMP),以及何时想要开发许多相关的放大器.

结论

即使我没有进一步了解细节,AMP也是提供Alfresco扩展的标准方式.它配备了良好的工具,带来了一些标准.

使用amp扩展包装进行“简单”项目.当事情变得更复杂时,使用一体机(多模块).

上一篇:Web脚本/共享/页面/ api / javascript /调试器已响应状态为500


下一篇:java – alfresco获取特定用户的用户组成员资格