更改捆绑水平菲利克斯?(Change Bundle level in felix?)

2019-11-04 14:13发布

我知道如何设置一个初始束的水平,只是要部署包:

bundlelevel -i 5

但我怎么更改现有束的水平? 帮助bundlelevel说:

  bundlelevel - set bundle start level or initial bundle start level
   scope: felix
   flags:
      -i, --setinitial   set the initial bundle start level
      -s, --setlevel   set the bundle's start level
   parameters:
      int   target level
      Bundle[]   target identifiers

bundlelevel - query bundle start level
   scope: felix
   parameters:
      Bundle   bundle to query

我不知道“捆绑[]”的说法是什么。 我尝试了bundle_ID的和[bundle_ID的],甚至包名称。

让我告诉一个例子。 比方说,我想改变管束5(书架API)级别从1到2。

g! lb
START LEVEL 5
   ID|State      |Level|Name
    0|Active     |    0|System Bundle (3.0.7)
    1|Active     |    1|Apache Felix Bundle Repository (1.6.2)
    2|Active     |    1|Apache Felix Gogo Command (0.6.1)
    3|Active     |    1|Apache Felix Gogo Runtime (0.6.1)
    4|Active     |    1|Apache Felix Gogo Shell (0.6.1)
    5|Active     |    1|Bookshelf Inventory API (1.5.0)

我试过如下:

g! bundlelevel -s 2 [5]
gogo: IllegalArgumentException: Cannot coerce 
    bundlelevel(String, String, ArrayList) to any of 
    [(boolean, boolean, int, Bundle[]), (Bundle)] 

g! bundlelevel -s 2 5
Must specify target bundles.

任何帮助表示赞赏。

Answer 1:

在制造FUSE ESB的一些经验,但从未使用费利克斯。 刚下载菲利克斯3.0.8和尝试:

g! lb
START LEVEL 1
   ID|State      |Level|Name
    0|Active     |    0|System Bundle (3.0.8)
    1|Active     |    1|Apache Felix Bundle Repository (1.6.2)
    2|Active     |    1|Apache Felix Gogo Command (0.8.0)
    3|Active     |    1|Apache Felix Gogo Runtime (0.8.0)
    4|Active     |    1|Apache Felix Gogo Shell (0.8.0)

g! bundlelevel -s 10 4

g! lb
START LEVEL 1
   ID|State      |Level|Name
    0|Active     |    0|System Bundle (3.0.8)
    1|Active     |    1|Apache Felix Bundle Repository (1.6.2)
    2|Active     |    1|Apache Felix Gogo Command (0.8.0)
    3|Active     |    1|Apache Felix Gogo Runtime (0.8.0)
    4|Resolved   |   10|Apache Felix Gogo Shell (0.8.0)
g!

我努力重现你的问题,但不能。 它接缝的指定工作。 你有没有试过在全新安装或更新的版本菲利克斯​​(不知道你使用的是什么)?



Answer 2:

不清亮的语法信息的我想:)捆绑[]指的包ID。 千万磅,得到你想要的包中的ID,然后运行

bundlelevel -s NEW_LEVEL bundle_ID的

例如:为第4级束10,做

bundlelevel -s 4 10

也许你的抱怨,因为你错过了-s?



文章来源: Change Bundle level in felix?