开发者社区> 问答> 正文

库jar中具有相同名称的多个属性文件

在我的项目中,我必须使用某些库。该库由多个jar文件组成,主要是一个,扩展文件很少。在其中的几个文件中,有一个名称相同的属性文件extension.properties。这些文件中的每一个都有不同的内容。

结果是,当我运行该应用程序时,仅加载了其中一个文件,而其他文件则被忽略。

最初,我使用Ant构建最终的jar。我想出了将所有内容放入uberjar并使用如下脚本将这些文件的内容压缩的方法:

<for param="file">
        <path>
            <fileset dir="lib" includes="*.jar"/>
        </path>
        <sequential>
            <concat destfile="${store.dir}/extension.properties" append="yes" fixlastline="true">
                <zipentry zipfile="@{file}" name="extension.properties"/>
            </concat>
        </sequential>
    </for>

它奏效了,但是我最终选择了uberjar和Ant。然后我想搬到Maven。我无法在其中完成类似的操作,但是设法通过Maven从Maven运行Ant构建maven-antrun-plugin。

解决方案似乎有些笨拙-从Maven调用Ant来合并文件并创建uberjar。

也许还有其他方法可以解决jar文件中重复文件的问题?如果我要在单独的文件中使用libs构建jar,该如何管理?

展开
收起
垚tutu 2019-11-28 18:50:45 675 0
0 条回答
写回答
取消 提交回答
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载