当前位置: 首页 > 面试题库 >

在运行时在Eclipse中查找依赖包

谭琛
2023-03-14
问题内容

Eclipse捆绑包(例如,在激活器代码中)如何在运行时找到依赖的Bundle实例?我想找到Eclipse选择满足依赖要求的捆绑软件,我不想自己解释清单。

一个例子:我想在我当前捆绑包所依赖的所有捆绑包中找到所有名为“ marker.txt”的资源。还有传递依赖。为了做到这一点,我需要能够找到所有这些捆绑包。


问题答案:

没有简单的方法来确定依赖关系。最好的方法是通过PackageAdmin界面。请参阅OSGi规范中的PackageAdmin和getImportingBundles,尤其是:http
:
//www.osgi.org/javadoc/r4v42/org/osgi/service/packageadmin/ExportedPackage.html#getImportingBundles()

您需要确定所有已安装的捆绑包,其中哪个导出了捆绑包正在导入的一个或多个软件包。实现此目的的最简单方法是使用bundles = null 调用
PackageAdmin.getExportedPackages(Bundle bundle) 。这将返回所有导出包的数组。然后,您需要迭代此数组并调用
ExportPackage.getImportingBundles()



 类似资料:
  • 我正在更新一大组遗留java应用程序。当前构建使用ant,其依赖项来自每个项目的lib目录。依赖项是每个项目的一部分,并签入源代码管理。更新的目的是将构建转换为gradle,并使用maven存储库进行依赖关系管理。为了简单起见,遗留构建使用ant构造从其他项目的lib目录复制依赖项,如下所示: 这种方法用于编译和运行时依赖项。虽然这样做有效,但由于包含了许多在运行时不需要的JAR,因此会导致部署工

  • 我们有一个多模块maven项目,它最近由Ant Ivy转换而来。其中一个模块是一个遗留的自定义可插入组件,它在类路径上查找插件并加载它们。多模块项目中的另一个模块是由上述插件运行的插件实现。 当从eclipse运行配置运行自定义应用程序服务器时,我们必须在类路径上包含每个插件。当我们在eclipse工作区中构建时,这些插件并没有编译成jar。因此,没有要包含的jar工件。 如果我将插件模块项目作为

  • 问题内容: 我正在尝试获取Java类中的所有依赖关系,包括用于泛型参数化和局部变量类型的类。到目前为止,我发现的最佳框架是apache bcel。使用它,我可以轻松地从字节码中找到所有字段,方法参数和局部变量。基本上,除了泛型和局部变量类型以外的所有内容。例如,在第1行中,我只能使用bcel中的方法找到一个依赖项- ArrayList。它无法检测到List接口和Point类。不幸的是,我也尝试了t

  • 我在WebSphere 8.5上部署了一个Java应用程序作为EAR。我试图弄清楚如何从ejb-jar.xml.(Noob到EJB)进行JNDI查找。我通常通过在WAR中添加条目来从WAR中进行JNDI条目查找web.xml.现在在ejb模块上工作,我发现我仍然可以在ejb bean[1]上进行JNDI查找。请看下面我的ejb-jar.xml: < br >我的问题是:现在我没有web.xml,如

  • 即使我添加了这个,当我运行gradle build时,它仍然有效,并且可以编译带有Commons-math3的代码。但是当我在build/中运行jar文件时, 它说异常在线程"main"java.lang.NoClassDefFoundError: org/apache/Commons/math3/Complex/Complex 但Gradle官方网站表示,“编译”中的资源也将包含在“运行时”依赖

  • 我正在使用maven eclipse插件来管理我的web应用程序项目的dependecies(eclipse WTP)。在更改依赖项时,我通常执行maven的copy-dependencies目标,将项目JAR复制到WebContent/WEB-INF/lib文件夹。当我更改pom文件中的依赖项时,是否有一种方法可以自动完成此操作?