JAVA总是读取执行jar的目录

时间:2012-12-19 10:34:33

标签: java path directory

我有一个小的Java应用程序,用于更新设置位置的文件。 应用程序从UpdateFiles文件夹中读取,将此文件夹中的文件移动到相应的文件夹中。该应用程序工作。我想知道的是,如果我希望应用程序始终尝试在应用程序所在的同一位置查找UpdateFiles文件夹,我该如何设置路径?例如,如果应用程序是从桌面执行的,我希望它在桌面上查找UpdateFiles文件夹,对于任何其他位置都是如此。该应用程序在Windows和AIX / linux环境中运行

谢谢/亲切的问候

2 个答案:

答案 0 :(得分:0)

您可以确定jar文件的位置,但这与当前工作目录(如果您未指定路径时获得的目录)不同

然而,jar的位置很少是存储文件的好地方,并且您不希望将已发布的程序与文件混合,因为这会使您的软件升级变得更加复杂。

我建议使用用户的主目录System.getProperties("user.home");或子目录如果升级软件,则不会改变。软件应始终可写。

答案 1 :(得分:0)

您必须从UpdateFiles所在的目录启动您的应用程序,如有必要,您可以创建一个bat文件(对于Windows)并从任何位置运行它

cd c:\path_to_UpdateFiles java MyApp

在Linux中做类似的事情