需要将路径设置为 java 项目的系统属性

Posted

技术标签:

【中文标题】需要将路径设置为 java 项目的系统属性【英文标题】:Need to set path as a system property for java project 【发布时间】:2013-11-15 06:06:35 【问题描述】:

我有 2 个属性文件,它们是我的 java eclipse 项目的一部分。现在我需要将这两个文件的路径作为-Dpath1="pathfile1" 之类的系统属性传递,因为项目只会接受它作为系统属性。 一种选择是我可以指定绝对路径,但我想指定相对于我的项目的路径,例如-Dpath1=$Project_Dir/resource/file1。原因是,如果项目目录被移动,那么项目将开始失败。

我正在使用 eclipse 来运行这个项目,并且不想声明任何新的系统变量来支持相对路径,所以例如不想创建一个新的系统变量 Project_Dir 。是否有可能实现这一目标以及如何实现?

【问题讨论】:

【参考方案1】:

是的,你可以做到。Eclipse 有内置的 Path 变量 PROJECT_LOC,它存储项目文件夹的位置,例如c:\工作区\项目1。 您可以在启动配置中使用此属性。

【讨论】:

【参考方案2】:

您可以通过以下方式设置系统属性:

System.setProperty("path1", yourPathHere);

现在,您只需构建正确的路径,相对于您的项目所在的位置。为此,请从项目的位置开始:How to get the path of a running JAR file?

【讨论】:

【参考方案3】:

使用setProperty 时,如果使用纯相对路径,则可以引用内部项目文件。

例如引用位于 /abc/def/workspace/project/lib/driver.exe 的文件:

System.setProperty("driver", "lib/driver.exe");

这很简单。

【讨论】:

以上是关于需要将路径设置为 java 项目的系统属性的主要内容,如果未能解决你的问题,请参考以下文章

线程“main”java.lang.IllegalStateException 中的异常:驱动程序可执行文件的路径必须由:系统属性设置

Selenium 使用 Java - 驱动程序可执行文件的路径必须由 webdriver.gecko.driver 系统属性设置

java.lang.IllegalStateException:驱动程序可执行文件的路径必须由webdriver.chrome.driver系统属性设置

如何在 OS X 上全局设置 java 系统属性?

Java开发环境的安装与卸载

python环境变量设置 需要把python的环境配置好