我的第一个portlet没有显示在liferay仪表板上。激活它会出现错误

问题描述 投票:0回答:1

Build.Gradle文件:

dependencies {
    compileOnly group: "com.liferay", name: "com.liferay.asset.taglib", version: "4.0.15"
    compileOnly group: "com.liferay", name: "com.liferay.comment.taglib", version: "2.0.7"
    compileOnly group: "com.liferay", name: "com.liferay.frontend.taglib", version: "4.0.15"
    compileOnly group: "com.liferay", name: "com.liferay.frontend.taglib.dynamic.section", version: "2.0.1"
    compileOnly group: "com.liferay", name: "com.liferay.frontend.taglib.form.navigator", version: "3.0.5"
    compileOnly group: "com.liferay", name: "com.liferay.frontend.taglib.util", version: "2.0.2"
    compileOnly group: "com.liferay", name: "com.liferay.journal.taglib", version: "3.0.1"
    compileOnly group: "com.liferay", name: "com.liferay.layout.taglib", version: "4.0.8"
    compileOnly group: "com.liferay", name: "com.liferay.site.taglib", version: "2.0.1"
    compileOnly group: "com.liferay.portal", name: "com.liferay.portal.kernel", version: "4.0.0"
    compileOnly group: "com.liferay.portal", name: "com.liferay.util.taglib", version: "4.1.0"
    compileOnly group: "javax.portlet", name: "portlet-api", version: "3.0.0"
    compileOnly group: "javax.servlet", name: "javax.servlet-api", version: "3.0.1"
    compileOnly group: "jstl", name: "jstl", version: "1.2"
    compileOnly group: "org.osgi", name: "org.osgi.service.component.annotations", version: "1.3.0"

    cssBuilder group: "com.liferay", name: "com.liferay.css.builder", version: "3.0.2"
}

`Liferay服务器版本: liferay-ce-portal-7.3.1-ga2Liferay Developer Studio版本: 3.8.0.202002250521-ga1

[当我执行此步骤时,即控制面板>应用程序管理器>找到我创建的portlet>激活,我遇到以下错误。请帮助我摆脱此问题

错误日志:

2020-04-28 00:55:45.121 ERROR [http-nio-8080-exec-4][PortletServlet:119] javax.portlet.PortletException: org.osgi.framework.BundleException: Could not resolve module: MyFirstPortlet [2280]_  Unresolved requirement: Import-Package: com.liferay.portal.kernel.portlet.bridges.mvc; version="[2.0.0,3.0.0)"_ [Sanitized]
javax.portlet.PortletException: org.osgi.framework.BundleException: Could not resolve module: MyFirstPortlet [2280]_  Unresolved requirement: Import-Package: com.liferay.portal.kernel.portlet.bridges.mvc; version="[2.0.0,3.0.0)"_ [Sanitized]
    at com.liferay.portal.kernel.portlet.LiferayPortlet.callActionMethod(LiferayPortlet.java:192)
    at com.liferay.portal.kernel.portlet.bridges.mvc.MVCPortlet.callActionMethod(MVCPortlet.java:395)
    at com.liferay.portal.kernel.portlet.LiferayPortlet.processAction(LiferayPortlet.java:88)
    at com.liferay.portal.kernel.portlet.bridges.mvc.MVCPortlet.processAction(MVCPortlet.java:248)
liferay portlet
1个回答
0
投票

问题出在您在build.gradle中配置的依赖项版本之一。发生的情况是您的构建环境使用了build.gradle中声明的版本,但是在运行时,模块找不到与其依赖的库的兼容版本。因此无法部署。

假设您正在使用Liferay工作区(即,portlet在子目录modules中,解决该问题的最简单方法是使用其“目标平台”:编辑Liferay工作区的gradle.properties(在顶部级别),并确保其中包含表示您要定位的版本的行:

liferay.workspace.target.platform.version = 7.3.1

此外,请检查文件的其余部分,它指向匹配的包,您应该保持一致。

完成后,请从build.gradle中删除版本声明,因为它们将从匹配的运行时中自动获取。将您的运行时环境升级到下一个GA版本后,您可能需要再次升级目标版本。

© www.soinside.com 2019 - 2024. All rights reserved.