我想在具有多个依赖关系的巨型命令行应用程序中获取当前用户路径。每当一个“。”被使用时,它给了我应用程序路径(jar存在的位置),而不是当前用户路径(正在调用的地方)。在java中获取当前用户的路径而不是应用程序路径
所以,当这是RAN:
File file = new File(".");
System.out.println(file.getCanonicalPath());
给我的应用程序中存在的路径
但是,当我创建一个单独的小应用程序,并使用相同的代码。从另一个目录调用jar,它会给出当前的用户路径。
我正在使用JSAP命令行解析器作为命令行参数,其作用方式与此相同。这怎么解决?我想让我的大应用程序获取当前的用户路径,而不是应用程序路径。
什么会导致他们表现不同?
通过path_你指的是位置_current用户,从用户那里他叫'Java的罐子./path/to/启动您的应用程序,即应用程序/ app.jar'? – Baz
是的,我想要用户调用jar文件的目录。它似乎在一个小型的独立应用程序中工作。不是大的应用程序,即使我将代码插入到应用程序主体的第一行。 – user724535