繁体   English   中英

共享Java对象流

[英]Sharing a Java Object Stream

我有一个与其他2个同学一起做的项目。 我们使用Dropbox共享了项目,因此我们可以在自己的房子里写东西(这不是一个很好的选择,但它比使用GitHub更有效且更容易)

我的问题现在是关于共享对象流的。 我想将流的文件放在代码的同一保管箱共享目录中。 但是,当我初始化文件时

File f = new File(PATH);

我必须使用计算机的路径(C:\\ User ** Alessandro ** \\ Dropbox)如您所见,它与Alessandro链接,因此也与我的计算机链接。 这显然在另一台PC上不起作用。 如何才能告诉编译器仅查看源代码/.class文件的相同目录?

您可以使用Class#getResource(java.lang.String)获得一个URL ,该URL对应于文件对于Java程序的类路径的位置:

URL url = getClass().getResource("/path/to/the/file");
File file = new File(url.getPath());

注意这里/是类路径的根,它是包含类文件的目录的顶部。 因此,您的资源应该放在类路径中的某个位置,以便它可以在您朋友的计算机上工作。

不要使用绝对路径。 使用相对路径,例如./myfile.txt 使用项目目录作为当前目录启动程序。 (这是Eclipse中的默认设置。)但是,您必须确保这对于开发和生产都有效。

或者,您可以创建一个属性文件并在其中定义路径。 然后,您的代码仅引用属性名称,并且每个开发人员都可以调整配置文件。 请参阅属性文档。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM