【问题标题】:java nio - How does Paths.get() finds a folder in the root directory of a project?java nio - Paths.get() 如何在项目的根目录中找到文件夹?
【发布时间】:2020-12-09 19:37:27
【问题描述】:

我在 Eclipse 项目 (TestProject) 中运行下面提到的代码。我在项目根目录中创建了这个文件夹(名为 FilesToBeProcessed)。

private static Path pathDirectory = java.nio.file.Paths.get("FilesToBeProcessed");

pathDirectory 被解析为完整路径 = "C:\eclipse\workspace-poc\TestProject\FilesToBeProcessed"

它如何解析这个完整路径,我的类是从包内部执行的,所以它不查看文件夹的当前目录(FilesToBeProcessed),基本上它是如何知道查看“C:\eclipse\workspace-poc \TestProject" ?

【问题讨论】:

  • 如果不指定任何根路径,程序的路径将被视为根...我希望始终提供绝对根路径。

标签: java eclipse java-io


【解决方案1】:

相对路径通常针对current working directory 进行解析,它是进程执行环境的一部分。如何设置取决于您如何开始该过程:

  • 当您从 IDE 启动应用程序时,当前工作目录是根据 IDE 中的项目启动配置设置的。如果没有改过,默认是项目目录。具体 Eclipse 见How do I change the working directory for an Eclipse run configuration?

  • 当您从命令行启动应用程序时,它会设置为您所在的 shell 的当前目录。

  • 当您从图形菜单或双击图标启动 GUI 应用程序时,当前工作目录取决于系统,但通常是用户的主目录或其中的子目录

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-06
    • 2018-10-24
    • 1970-01-01
    • 2012-11-12
    • 1970-01-01
    相关资源
    最近更新 更多