在Liferay7.0中创建 common 工程

来源:互联网 发布:医学专业英语翻译软件 编辑:程序博客网 时间:2024/06/08 08:22


  1. maven 命令创建 2号 archetype  (maven command : mvn archetype:generate -Dfilter=liferay)

       关于使用 maven 创建 liferay 工程的详细步骤可查看: https://dev.liferay.com/zh/develop/tutorials/-/knowledge_base/7-0/generating-new-projects-using-archetypes

  2. 在需要引用 common 工程的 pom 文件中,引入 common 工程(添加 common 工程的 dependency)

  3. 修改 common 工程的 bnd.bnd文件,其中的 Export-Package :将指定的 package 导出到 jar 包。 用 ","分割,或者 .* 将所有 package 导出

      关于该步骤的具体信息,可查看 https://dev.liferay.com/zh_CN/develop/tutorials/-/knowledge_base/7-0/modularizing-an-existing-portlet


   可能遇到的问题:

           当我们在 common 工程中引入 Liferay 外部的 jar包时,我们往往是直接在 pom.xml 文件中添加需要引用的 jar 包的依赖。此时项目能正常编译,并且使用 maven 也能正常 build ,但是当部署项目时,会出现类似这样的报错信息: (这里的 com.xxxx.portal.common 就是我创建的 common 工程)

                 FrameworkEvent ERROR org.osgi.framework.BundleException: Could not resolve module: com.xxxx.portal.common [675]_  Unresolved requirement: Import-Package: org.apache.http_ [Sanitized] at org.eclipse.osgi.container.Module.start(Module.java:429)。

       解决该问题的方法: 打开 common 工程的 manifest.mf 文件(在打包 jar 文件时会生成在 target/classes/META-INF 目录下),在 Import-Package 中将提示错误导入的包删掉即可。 关于具体原因,可查看  http://www.howtobuildsoftware.com/index.php/how-do/DBC/eclipse-osgi-bundle-openhab-osgi-unresolved-requirement-import-package-compi4jiogpio


更新与:2017-7-4

      使用上述方法,手动删除 manifest.mf 的文件内容,显然是不合理的,因为每一次重新 build 工程, manifest.mf 文件又会重新生成。

      更好的解决办法是在 bnd.bnd 文件中过滤掉这些 package,那么每次生成 manifest.mf 文件的时候就不会导入这些包了,在 bnd.bnd 文件中加入如下语句:

      Import-Package:  !org.apache.http.*,*;



原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 超星尔雅用学号登录密码忘了怎么办 全脸做激光去黄褐斑后脸发红怎么办 上传到微云中的视频下载不了怎么办 微云保存的小电影下载不了怎么办 苹果手机下载有云朵下载不了怎么办 手机下载登录忘了密码了怎么办 软软件被手机加密忘了密码怎么办 苹果手机想下载东西忘了密码怎么办 已经不念书几年了突然想上学怎么办 江湖风云录把王老爷子杀了怎么办 练扫踢胫骨旁边的肌肉受伤了怎么办 四个月宝宝没抱住摔了头部怎么办 老公老是跟年轻的小姑娘聊天怎么办 老婆出轨老公想离婚又舍不得怎么办 孕妇打完无痛分娩针就想睡觉怎么办 熟食店开空调菜品吹的很干怎么办 不锈钢锅在液化气烧了发黄怎么办 在小镇门面卤菜店不好卖怎么办? 被辣椒辣到嘴唇了该怎么办 沁园净水机不制水指示灯不亮怎么办 太辣了辣得胃疼怎么办 出现连接问题或mmi码无效怎么办 存折丢了怎么办卡号也不记得了 车内皮子被烂苹果腐蚀有印怎么办 锅被腐蚀后变黑色应该怎么办 后厨炉灶里的炉芯进水了怎么办 小儿九个月老是流黄鼻子该怎么办 肉炖的老了不烂怎么办 吃了凉东西现在一直打嗝应该怎么办 喝了很多水还是觉得口渴怎么办 刚买的猪肝没洗直接炒了怎么办 四个多月的宝宝吃了脏东西怎么办 狗吃了脏东西拉稀呕吐怎么办 五个月宝宝怕吃药导致奶不喝怎么办 蒸锅锅盖吸住了怎么办锅比锅盖要大 豇豆没熟孕妇吃了中毒怎么办 孩子积食拉不出粑粑憋的直哭怎么办 2岁宝宝总是半夜拉粑粑怎么办 金毛拉很臭的稀粑粑怎么办 点餐系统登录后没有菜单怎么办? 环亚在线微交易亏了钱怎么办