【发布时间】:2012-12-06 16:30:12
【问题描述】:
我有一个小型 Java 应用程序,可以更新指定位置的文件。 该应用程序从 UpdateFiles 文件夹中读取,将此文件夹中的文件移动到相应的文件夹中。该应用程序有效。我想知道的是,如果我希望应用程序始终尝试在与应用程序相同的位置查找 UpdateFiles 文件夹,我应该如何设置路径?例如,如果应用程序是从桌面执行的,我希望它在桌面中查找 UpdateFiles 文件夹,与任何其他位置相同。该应用程序在 windows 和 AIX/linux 环境中运行
谢谢你/亲切的问候
【问题讨论】:
-
请在“应用程序的位置”下定义您的意思。它是带有 *.jar 和 *.class 文件根目录的文件夹吗?或者是java启动的当前目录?
-
“.JAR”文件的位置。我理解所有用户的意思,但该应用程序将在具有不同目录结构和权限的多个服务器上使用。我将 .jar 应用程序移动到服务器上,执行它,然后再次将其删除。因此,如果我将 jar 放在 /usr/test/ 中,我希望应用程序在 /usr/test/ 文件夹中查找 UpdateFiles 文件夹。如果我将 jar 放在 /usr/test/test2/ 中,我希望它在 /usr/test/test2/ 目录中查找 UpdateFiles 文件夹。这一点我可以解释清楚。我希望这是有道理的
-
据我了解,您总是假设您的应用程序与起始类一起放置在一个 jar 文件中。你如何开始你的申请?为什么不只使用可以显式指定工作路径的起始参数?例如
java -jar myapp.jar -DmyWorkDir=/usr/test2