How to clear only a specific OSGi module directory from osgi/state/

Issue

  • Is it possible to clear only the data from a specific module in osgi/state/ instead of clearing the whole directory?

Environment

  • DXP 7.0, 7.1, 7.2, 7.3, 7.4

Resolution

  • Imagine we want to clear the data of module com.example.
  • Use the Gogo Shell to find the OSGi bundle id:
    g! lb -s com.example
    START LEVEL 20
    ID|State |Level|Symbolic name
    1197|Active | 15|com.example (3.0.59)|3.0.59
  • Use the bundle id, 1197 in the above example, to find the bundle directory. By default: $LIFERAY_HOME/osgi/state/org.eclipse.osgi/1197.
    • Otherwise, you can use the b <bundle-id> command to find the path:
      g! b 1197 | grep state
      Id=1197, Status=ACTIVE Data Root=/opt/liferay/osgi/state/org.eclipse.osgi/1197/data
  • Finally, remember to stop you application server before clearing the directory.

Additional Information

 

¿Fue útil este artículo?
Usuarios a los que les pareció útil: 0 de 0