不能让春分编织在可安装的功能中工作



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

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

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

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

最新更新