我是一个Apache Ant新手,我创建了一个Java应用程序,在许多文件中包含一个sys。属性文件。这个文件的位置在根目录中,为了被称为字符串"sys"。代码中的"属性"用于定位该文件。它工作得很好。
现在我已经用Apache Ant创建了一个构建文件,它从应用程序中创建一个jar文件。在代码中,我使用了
<filelist dir="${basedir}" files="sys.properties"/>
,当创建这个jar文件时,它确实将新文件放置在jar文件的根目录中。
当我运行命令行:
java -classpath C:tmpAPP;doddle.jar; doddle.home.start
jar应用程序似乎在寻找sys。属性,但是它找不到它( doodle .home。开始类调用sys.properties)。
你知道问题在哪里吗?提前感谢!
问题是sys.properties
不再是一个文件,它是一个jar条目。
您可以通过SomeClass.class.getResourceAsStream("/sys.properties")
访问它作为InputStream
(参见如何处理流的I/O教程)
您应该提供有关如何尝试引用该文件的更多信息。你要走哪条路?如果您正在尝试打开"sys。属性"你可以尝试引用"/sys。