gpt4 book ai didi

java - Ant:获取Java类名并写入属性文件

转载 作者:行者123 更新时间:2023-12-01 07:26:13 25 4
gpt4 key购买 nike

我想在 bnd 工具的帮助下自动创建 OSGi list 。为此,我需要创建一个包含以下两行的properties.bnd 文件:

Bundle-Activator=org.company.package.MyPluginActivator
Export-Package=org.mycompany.package #or possibly multiple packages here

我的自动化脚本需要找到一个实现BundleActivator接口(interface)的java类,在本例中它是org.company.package.MyPluginActivator。以及它的包名称,在本例中为 org.company.package

理想情况下,我希望使用 Ant 来自动执行此操作,但对任何其他不需要事先安装的轻量级跨平台工具感到满意。

谢谢!

PS:我知道 Ant Property 和 PropertyFile 任务,但不知道如何获取所需 java 类的名称。

最佳答案

问题在于,正如 Neil 所指出的,可以有多个类实现 BundleActivator。这是从现在开始 6 周后浪费几个小时来找出代码停止工作的原因的绝佳方法之一......

无论如何,既然你似乎坚持搬起石头砸自己的脚,你也可以这样做:

Bundle-Activator: ${classes;implements;org.osgi.framework.BundleActivator}

这似乎比执行已接受的答案容易得多,并且当实际上有多个实现者时至少会生成错误。

无论如何,通过导出包含激活器的包,您还犯下了另一个致命的罪过(在 OSGi 世界中)。 OSGi 保持内容私有(private)的整个想法(您应该为此使用 Private-Package)。

关于java - Ant:获取Java类名并写入属性文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24185603/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com