org.osgi.framework.storage.clean = onFirstInit在Apache Felix OSGi实现的上下文中意味着什么?

时间:2014-10-10 17:08:14

标签: osgi apache-felix

我试图找出org.osgi.framework.storage.clean=onFirstInit在Felix框架环境中的真正含义。

根据OSGi规范:

  

org.osgi.framework.storage:文件系统中的有效文件路径为a   directory ...框架可以自由地使用这个目录   例如,适合完全删除其中的所有文件和目录......

     

org.osgi.framework.storage.clean:指定存储的时间和时间   应清理框架区域。如果没有指定值,   框架存储区域不会被清理。

由于根据规范,框架可以根据需要自由使用此目录,因此当OSGi规范声明应该清理存储区域时,不清楚是什么意思。清理可能意味着每个OSGi实现都有所不同。

Apache Felix documentation声明:

  

onFirstInit 在框架实例时刷新捆绑缓存   首先初始化。

特定于Felix文档:

  1. “刷新捆绑缓存”是什么意思?刷新与删除存储目录相同,然后从头开始重建吗?因此,当Felix容器关闭时它会与rm -rf felix-cache相同,因此当它启动时会重建缓存,就好像这是容器第一次启动一样?
  2. 当它说“首次初始化框架实例时”是什么意思?这是否意味着第一次仅在容器第一次启动时初始化框架?或者它是否意味着每次重新启动容器时第一次初始化框架?

1 个答案:

答案 0 :(得分:2)

  

"刷新捆绑缓存"是什么意思?

这意味着删除org.osgi.framework.storage

指定的目录
  

刷新与删除存储目录相同,然后从头开始重建吗?

  

所以当关闭Felix容器时它会与rm -rf felix-cache相同,以便在启动时重建缓存,就好像这是容器第一次启动一样?

  

当框架实例首次初始化时,它是什么意思"?

Bundles可以多次初始化。此语句表示只应在JVM启动后第一次删除目录,而不是在系统包初始化之后。

  

这是否意味着第一次仅在容器第一次启动时初始化框架?或者它是否意味着每次重新启动容器时第一次初始化框架?

这意味着每次重新启动容器时第一次初始化框架