我有几个外部文件要添加到jar文件中,并在类中访问这些文件。我使用java-jar
命令从命令行运行这个jar文件。所以当我使用绝对路径时,我可以访问文件内容,但当我使用相对路径时,我得到java。伊奥。IOException:(没有这样的文件或目录)
。我已将这两个文件都包含在src/main/resorces
目录中。我试过使用文件。conf,/file。形态/文件conf
,它们都不起作用。还试图在构建中包含文件。从{[“file1.conf”,“file2.conf”]}中升级。
知道如何使用文件的相对路径访问java代码中的文件内容吗?
如果我理解正确,您希望访问驻留在类路径中的文件。这些文件将与您的应用程序打包在一起,您知道它们的名称。如果这是正确的,并且您并不特别需要java。伊奥。文件
但是为了接受文件的内容,我建议:
try (InputStream is = MyClass.class.getResourceAsStream("/file.conf")) {
// do something with the input stream
}
您还可以检索java。网您的文件的URL
,如果您愿意。
简而言之,String属性的语法如下:
/
开头,则名称从类路径的根解析。因此,例如,如果您运行java-jarhello.jar
,file.conf必须位于hello.jar的根/
开头,则名称相对于您调用getResourceAsStream()
方法的类进行解析。有关API类的更多信息,请查看API类。
如何使用gradle将配置文件或任何其他资源添加到jar中? 我的项目结构: src/main/java/com/perseus/...---Java包(源文件) src/main/java/config/*。xml---Spring配置文件 预期罐子结构: com/perseus/。——Java包(类文件) 配置/*. xml---Spring配置文件
直到最近,我还只是在使用一个简单的Java项目。我最近决定将其升级为使用gradle包装器和NetBeans12,但现在该程序无法检测beep3.wav文件。 我看过这个、这个和很多其他的页面,但是没有一个关于向jar添加文件的信息,所以我假设我正在寻找错误的信息。 你能帮个忙吗?我只需要获得wav文件,以便在构建项目时自动插入到jar中。
在Gradle for Android中,为发布版本定义签名配置似乎是常见的做法,如下所示: 问题是,我想把我的build.gradle文件保存在版本控制中,并且在一些git服务器上没有我的密钥库的密码(这与我用于其他东西的密码相同,愚蠢的,我知道)没有好的感觉。 有没有办法从硬盘驱动器上的某个位置从外部文件加载签名配置?
如何使用Gradle将配置文件或任何其他资源添加到我的jar中? 我的项目结构: Com/Perseus/..----Java包(类文件) config/*.xml--Spring配置文件
上一个示例仅展示了java硬编码式的配置,更多的应用场景是使用外部配置文件,灵活配置调度策略,以便于随时改变调度策略,如下是外部配置的代码示例: cron4j=task1, task2 task1.cron=* * * * * task1.class=com.xxx.TaskAaa task1.daemon=true task1.enable=true task2.cron=* * * * *
问题内容: 情况 我在Windows上使用Pyinstaller制作项目的.exe文件。 我想使用option来获得干净的结果和易于分发的文件/程序。 我的程序使用一个文件来存储配置选项。该文件可以由用户定制。 问题 使用选项Pyinstaller将所有声明的“数据文件”放入单个文件文件中。 我已经看到了这个请求,但它给istructions添加一个包文件 的onefile内部 ,而不是外部的,在