【问题标题】:Reference project directory from anywhere从任何地方引用项目目录
【发布时间】:2017-01-16 22:49:30
【问题描述】:

我目前正在 intellij 中编写一个 Java/kotlin 项目,并且必须使用文件阅读器来获取 XML 和其他基于文本的文件。

我创建了一个名为 files 的目录,用于存储所有必要的文件。

我遇到的问题是我需要为每个方法调用创建一个新路径以引用文件目录,因为它因调用方法的目录而异。

有没有办法引用项目根目录或文件目录并让它在任何地方都可以使用,例如 System.getDirectory("files" OR "root") 等。

我目前正在使用 System.getProperty("user.dir") 但这条路径对于它被调用的位置是主观的,因此不是我想要的。

【问题讨论】:

  • 因为从哪个文件调用它会有所不同:不,不是。相对路径相对于 当前 目录,即执行java 的目录。如果您从 IDE 运行,这通常是项目根目录,除非您在运行配置中明确指定其他内容。
  • I have made a directory called files: 你在哪里创建了那个目录?你如何开始你的项目?

标签: java intellij-idea path kotlin


【解决方案1】:

如果您的文件与您的应用程序捆绑在一起,请使用资源并从类路径加载它们。否则,我建议向您的应用添加配置支持或命令行参数,让调用者指定这些文件的位置。依靠找出“当前目录”容易出错并受环境影响(在您的情况下,Intellij 中的“运行配置”指定的目录,通常是 maven 项目中的 $MODULE_DIR$)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-21
    • 1970-01-01
    • 2013-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多