gpt4 book ai didi

Java命令行程序类路径问题

转载 作者:行者123 更新时间:2023-12-02 08:10:59 26 4
gpt4 key购买 nike

所以我在 Eclipse 中有一个相当大的项目,它运行良好并访问文件等。在 Eclipse 中,我访问具有与项目目录根相关的本地目录名称的文件。

例如,我的项目名为“Project1”,位于名为“MyProjects”的目录中,因此它看起来像这样:“MyProjects/Project1”。我想访问“MyProjects”文件夹中名为“hello.text”的文件。所以我只需执行“../hello.text”,当我在 Eclipse 中执行此操作时效果很好。

我遇到的问题是,当我使用“java Project1”命令运行程序时,它可以正常运行程序,但无法访问该文件,因为当从命令行执行程序时,它会从“bin”目录中为它们加注星号位于“Project1”目录内。所以它搞乱了整个程序。有没有办法在我的 Windows 环境或 Eclise 中轻松更改此设置?我希望我的问题有意义。如果可能的话,我希望程序从“Project1”目录执行,这样我就不必每次都更改文件位置。

最佳答案

您可以使用 ClassLoader 类方法之一

public URL getResource(String name)
or
public InputStream getResourceAsStream(String name)

以独立于代码位置的方式定位和访问类路径中的任何资源。例如

InputStream myTextFileStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("Project1/Hello.txt") ;

关于Java命令行程序类路径问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7437832/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com