java - 如何将自定义文本文件包含到构建过程中

标签 java build-automation serviceloader

最近我一直在编写插件,然后使用 ServiceLoader 加载这些插件。为了让 ServiceLoader 找到我的插件,我的 jar 中的 META-INF/services/下必须包含一个文本文件。该文本文件必须以 ServiceLoader 正在“寻找”的接口(interface)命名,并且必须包含实现类的规范名称。所有这些都工作得很好,但是这种方法有一个非常烦人的问题:每次构建项目时,我都必须手动将/services/文件夹以及文本文件添加到jar(使用 Winrar)。这在开发过程中极其很麻烦,因为我必须不断地重新构建项目才能进行测试,这意味着我还必须手动添加文件夹和文本文件强>每一次也是如此。

我真的希望有一种方法可以让 Java 在构建项目时自动添加 META-INF/services/文件夹以及文本文件,因为这让我发疯! :)

顺便说一句,我正在使用 Netbeans,它(据我所知)在内部使用 Ant 来自动化构建过程。我想这些信息可能与我的问题相关。

谢谢!

最佳答案

右键单击“源包”,选择“新建 | 其他”

enter image description here

从“类别”树中选择“其他”。从“文件类型”中选择“文件夹”

enter image description here

为您的文件夹命名...

enter image description here

中提琴:D

enter image description here

现在右键单击新文件夹并按照相同的基本步骤操作,但这一次,使用“空文件”来创建文本文件

关于java - 如何将自定义文本文件包含到构建过程中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13336931/

相关文章:

java - 从片段访问插件,反之亦然

java - 学习 Swing 和 Jframe 之类的东西 - 还想了解一些有关组织的提示和技巧

build-automation - 有没有办法在默认标签器中使用日期标签器的修订版?

unit-testing - ant构建脚本的单元测试和代码覆盖率

java - 如何使 java ServiceLoader 在 NetBeans 6.9 模块应用程序中工作

java - 我应该查看 java 编译器生成的字节码吗?

java - 如何使用条件注释覆盖 spring 中的配置(例如)

javascript - 让 Grunt 为不同的设置生成 index.html

java - ServiceLoader使用ClassLoader指向不同的路径

java - Spring 中是否有 ServiceLoader 的类似物以及如何使用它?