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扩展包装进行“简单”项目.当事情变得更复杂时,使用一体机(多模块).
标签:java,maven,maven-3,alfresco 来源: https://codeday.me/bug/20190715/1467397.html