【发布时间】:2013-05-28 05:30:28
【问题描述】:
我创建了一个 Java 程序,用于比较在版本管理工具中保存为文件的脚本与加载到我们数据库中的脚本。这是一个简单的程序,从头到尾运行,并在发现差异时输出到控制台。现在我想从 .properties 文件中加载数据库 URL、用户名和密码以及文件的位置。
我确实假设如果我将文件放在类路径中,它将在我的 Java 程序中可见:
Properties values = new Properties();
try
{
File checkPackages = new File("myfile.properties");
if(!checkPackages.exists()) throw new FileNotFoundException();
values.load(new FileReader(checkPackages));
}
catch(FileNotFoundException fnfe) {}
我还想将整个程序保存到一个 .jar 文件中,这样它就更有用了。不幸的是,我发现引用 .properties 文件的唯一方法是将它放在运行 java.exe 的目录中。 PATH 或 CLASSPATH 似乎不适用??
我找到了an Oracle site about the .jar file's Manifest file,因为我希望那里有答案,但清单中的 Class-path: 元素似乎只引用了不在 .jar 中的 .jar 文件(而不是 .properties文件是!) 问题: 有没有办法将 .properties 文件包装到 .jar 文件中,这样我的用户就不必知道它的存在? 有没有办法将 Oracle 驱动程序 .jar 包装到应用程序的 .jar 中,这样我的用户就不必知道它的存在(Oracle 说这需要“自定义代码”)?
TIA
【问题讨论】:
标签: java properties jar