2012-07-03 31 views
0

我写了一个java程序,其中不同的类在这个过程中生成大量文件(比如说txt文件),然后读取文件并对它们进行操作。我已经将该项目作为一个JAR文件,我可以从命令运行它,因为JAR位于同一个目录中。 但是,我想在远程服务器上的PATHs不一样的地方运行这个JAR文件,因此它会产生错误,因为在我的项目中它应该从/ Programs/Folder /中读取一个文件,而在服务器这不会发生,因为没有/程序/文件夹...目录。我是否必须根据新位置更改我的程序中的所有路径我想放置我的罐子还是有其他方法? 我将不胜感激您的帮助。 最好的祝愿在便携式JAR中处理路径

+0

为什么不通过参数传递路径来读取? –

+1

考虑也使用相对路径。 – Wug

+0

你使用相对路径还是绝对路径? –

回答

0

我更喜欢的是我使用相对路径,然后使用classloader.try读取相对路径它。

+0

感谢您的回答。但请你举个例子。我怕我不明白,即使使用file.getAbsolutePath()。例如我的代码文件位于/Programs/Folder1/folder2/..java,其中生成,写入和读取的文件位于/Programs/Folder1/Folder3/..txt中,我需要将整个项目移动到另一个服务器文件夹名称是非常不同的 – Ramin

1

我想最好的方法是将目录名称作为参数传递给java命令行。

读它从参数ARGS主

1

这个简单的,最好的解决办法是改变所有的路径中的文件项目的内部是相对路径。你也可以简单的将目录中你想要的文件保存到String args[]作为参数