2

Liferay DXP 7.2 is failed to start (clean version) with OpenJDK. Not using any IDE, it's Windows Server 2016 version (don't think any issue will be there with server edition) just started the startup.bat under E:\PROJECT_NAME\liferay-dxp-tomcat-7.2.10.1-sp1-slim-20191009103614075\liferay-dxp-7.2.10.1-sp1\tomcat-9.0.17\bin. Checked with Environment Variables (JAVA_HOME:C:\openjdk-13.0.1_windows-x64_bin\jdk-13.0.1). It looks like any dependency or configuration is missing. Help needed.

22-Nov-2019 09:43:37.490 INFO [main] org.apache.catalina.startup.Catalina.load Server initialization in [1,281] milliseconds
Loading jar:file:/E:/PROJECT_NAME/liferay-dxp-tomcat-7.2.10.1-sp1-slim-20191009103614075/liferay-dxp-7.2.10.1-sp1/tomcat-9.0.17/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/system.properties
22-Nov-2019 09:43:40.912 SEVERE [main] org.apache.catalina.core.StandardContext.listenerStart Error configuring application listener of class [com.liferay.portal.spring.context.PortalContextLoaderListener]
 java.lang.ExceptionInInitializerError
        at com.liferay.petra.reflect.ReflectionUtil.<clinit>(ReflectionUtil.java:162)
        at com.liferay.portal.spring.context.PortalContextLoaderListener.<clinit>(PortalContextLoaderListener.java:460)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:500)
        at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:481)
        at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:151)
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4604)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5150)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:713)
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:695)
        at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:631)
        at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1832)
        at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
        at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:118)
        at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:526)
        at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:425)
        at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1577)
        at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
        at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
        at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:424)
        at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:367)
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:929)
        at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:831)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1377)
        at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1367)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
        at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:902)
        at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
        at org.apache.catalina.core.StandardService.startInternal(StandardService.java:423)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
        at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:928)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
        at org.apache.catalina.startup.Catalina.start(Catalina.java:634)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:567)
        at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:350)
        at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:492)
Caused by: java.lang.NoSuchFieldException: modifiers
        at java.base/java.lang.Class.getDeclaredField(Class.java:2412)
        at com.liferay.petra.reflect.ReflectionUtil.<clinit>(ReflectionUtil.java:157)
        ... 48 more```


AritraDB
  • 315
  • 4
  • 13

2 Answers2

3

If you look at the Liferay DXP compatibility matrix, you'll discover that Java 13 is not on there - it's only the LTS versions. Run with a compatible version to eliminate this problem. Note that only the TCK-certified OpenJDK builds are supported, you might want to validate this on top of the version.

Olaf Kock
  • 46,930
  • 8
  • 59
  • 90
  • Yes. I used JDK8 and it's worked for me, Thanks. Also, do you have any idea regarding TCK-certified OpenJDK? I read a few articles but still not found what OpenJDK version/build is TCK certified which will be compatible with Liferay DXP. As per Liferay DXP compatibility matrix, All Java Technical Compatibility Kit (TCK) compliant builds of Java 11 and Java 8 should be ok. – AritraDB Nov 25 '19 at 06:12
  • Hi @AritraDB - you should find the TCK information with your choice of OpenJDK (if your JDK is certified, that is). Also, good to know that it worked for you - consider accepting the answer as it solved your problem – Olaf Kock Nov 26 '19 at 14:30
0

The error is due to incompatible JDK setup. So you need to change to compatible JDK. Ex: JDK8 works well for liferay-ce-portal-tomcat-7.2.1-ga2.

In Windows: Set JAVA_HOME to JDK folder path and PATH to to JDK/bin folder path. Restart tomcat by opening new command line window it should work.