Distribution Manifest.mf 中的单个点(“.”)是什么意思?

2024-04-06

最近我对 Manifest.mf 文件中的类路径有点困惑。所以我想要的是将一些properties.files从我的distribution.jar中外包出来,并将它们放在它旁边,而不更改java-source-files。

下面的例子:此时我可以打开一个像这样的属性文件:

this.getClass().getClassLoader().getRessourceAsStream( "/config/jdbc.properties" );

jdbc.properties 位于名为“resources”的 eclipse 源文件夹中,其中包含一个名为“config”的包。现在,当我构建发行版时,我将它们外包到 distribution.jar 旁边的文件夹中,但如果不更改显示的源代码,我仍然无法找到它们。

到目前为止唯一有效的通用解决方案(没有绝对路径)是以下manifest.mf:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.1
Created-By: 17.1-b03 (Sun Microsystems Inc.)
Main-Class: com.ymene.Main
Class-Path: .

这 ”。” Class-Path 中似乎指向 .jar 的根目录?我以前从未在任何清单文件中见过这样的情况。所以我想知道,这是否是实现我完全不更改 java 源代码的愿望的正确方法,无论资源是在 jar 内部还是外部构建,只要路径相同即可。

谁能告诉我,如果“。”在manifest.fm文件中会对我产生任何不良的副作用吗?如果情况并非如此,是否可以使用 Ant 生成 Manifest.mf 类路径条目(我的意思是“.”)?或者还有其他解决方案可以实现这一目标吗?

预先感谢您对此主题的任何帮助, 伊梅内


单点表示“此目录”。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Distribution Manifest.mf 中的单个点(“.”)是什么意思? 的相关文章

随机推荐