简体   繁体   English

Liferay和Portlet部署

[英]Liferay and portlet deployment

I have a problem during an portlet deployment. 在Portlet部署期间出现问题。 How to resolve? 怎么解决?

Liferay (last version). Liferay(最新版本)。 Eclipse + liferay plugin Eclipse + Liferay插件

2019-07-26 19:51:54.531 ERROR [fileinstall-D:/STUDIO JAVA/liferay-dxp-7.2.10-ga1/osgi/modules][LogService:93] Error while starting bundle: file:/D:/STUDIO%20JAVA/liferay-dxp-7.2.10-ga1/osgi/modules/com.prova.jar org.osgi.framework.BundleException: Could not resolve module: com.prova [2197]_ Unresolved requirement: Require-Capability: osgi.ee; 2019-07-26 19:51:54.531错误[fileinstall-D:/ STUDIO JAVA / liferay-dxp-7.2.10-ga1 / osgi / modules] [LogService:93]启动捆绑包时出错:文件:/ D:/ STUDIO%20JAVA / liferay-dxp-7.2.10-ga1 / osgi / modules / com.prova.jar org.osgi.framework.BundleException:无法解析模块:com.prova [2197] _未解决的需求:需求能力: osgi.ee; filter:="(osgi.ee=UNKNOWN)"_ [Sanitized] at org.eclipse.osgi.container.Module.start(Module.java:444) at org.eclipse.osgi.internal.framework.EquinoxBundle.start(EquinoxBundle.java:428) at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1264) at org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1237) at org.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:520) at org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365) at org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:316) filter:=“(osgi.ee = UNKNOWN)” _ [已消毒]在org.eclipse.osgi.container.Module.start(Module.java:444)在org.eclipse.osgi.internal.framework.EquinoxBundle.start( org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundle(DirectoryWatcher.java:1264)的org.apache.felix.fileinstall.internal.DirectoryWatcher.startBundles(DirectoryWatcher.java:1237)的EquinoxBundle.java:428) org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:365)上的.apache.felix.fileinstall.internal.DirectoryWatcher.doProcess(DirectoryWatcher.java:520)在org.apache.felix.fileinstall.internal .DirectoryWatcher.run(DirectoryWatcher.java:316)

It seems you hit https://issues.liferay.com/browse/LPS-93643 看来您点击了https://issues.liferay.com/browse/LPS-93643

Long story short, the tooling is using old version of Bnd that does not know how to handle Java 11 runtime. 长话短说,该工具正在使用不知道如何处理Java 11运行时的旧版本的Bnd。

What you can do as workaround is disable the generation of the osgi.ee requirement. 解决方法是禁用osgi.ee要求的生成。 To do so you need to place this instruction in your bnd.bnd file: 为此,您需要将此指令放在您的bnd.bnd文件中:

-noee: true

As a result, OSGi runtime will not check if the Java version your module expects is compatible with the one of the runtime. 结果,OSGi运行时将不会检查您的模块期望的Java版本是否与该运行时之一兼容。 It should not cause any issues for as long as you make sure you both build and run with the same Java version. 只要确保您使用相同的Java版本进行构建和运行,它就不会引起任何问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM