不能让Equinox编织在可安装功能中工作

时间:2016-04-18 20:25:14

标签: eclipse-rcp equinox load-time-weaving

我有一个使用org.eclipsse.equinoix.weaving.hook在运行时进行二进制编织的包。当我将它打包为一个独立的应用程序时,它可以在config.ini中使用默认启动级别进行编织的包进行打包。

但是,我还使用插件创建了一个可安装的功能。当我将该功能安装到Eclipse IDE中时,在启动IDE时不会进行编织。使用-console启动IDE并查看软件包状态,我看到我的编织软件包状态为STARTING。它所依赖的所有捆绑包的状态都是ACTIVE。如果我从OSGI控制台手动启动我的编织捆绑,从那时起编织工作。即使后续启动它也可以工作,而无需在OSGI控制台上手动启动它。但是如果我重新安装该功能,那么我必须在OSGI控制台上手动启动一次捆绑以便编织工作。

我应该如何配置应用程序,以便在不干预OSGI控制台的情况下进行编织?我尝试为我的编织包和org.eclipse.equinox.weaving.hook包设置不同的启动级别,但这没有帮助。

1 个答案:

答案 0 :(得分:0)

你知道这里的描述Equinox Aspects – Quick-start guide 我在过去偶然发现的最重要的部分是编织束的共同位置。如果安装了此功能,则必须确保系统捆绑包org.eclipse.osgi和捆绑包org.eclipse.equinox.weaving.hook必须位于同一目录(位于同一位置)。 您应该检查捆绑org.eclipse.equinox.weaving.aspectj是否以启动级别1启动。