Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java IntelliJ:我可以通过网络驱动器读/写/运行项目吗?_Java_Intellij Idea - Fatal编程技术网

Java IntelliJ:我可以通过网络驱动器读/写/运行项目吗?

Java IntelliJ:我可以通过网络驱动器读/写/运行项目吗?,java,intellij-idea,Java,Intellij Idea,所以在我的办公室,我们进行Java开发,必须在多个环境中进行测试。这是通过虚拟机完成的,我们使用的程序是VMware 所有这些虚拟机都占用了大量磁盘空间,因此我正在寻找降低占用空间的方法。我想使用更小的虚拟机,所以我想减少需要加载到虚拟机中的东西的数量。我的想法是与我的开发环境共享一个目录,并与我的虚拟机共享。这样,我就可以在多个操作系统上使用我的开发环境,而不必浪费拥有重复拷贝的额外磁盘空间 问题是IntelliJ似乎不喜欢通过网络驱动器访问项目。它不是真正联网的,因为我的机器上的所有东西都是

所以在我的办公室,我们进行Java开发,必须在多个环境中进行测试。这是通过虚拟机完成的,我们使用的程序是VMware

所有这些虚拟机都占用了大量磁盘空间,因此我正在寻找降低占用空间的方法。我想使用更小的虚拟机,所以我想减少需要加载到虚拟机中的东西的数量。我的想法是与我的开发环境共享一个目录,并与我的虚拟机共享。这样,我就可以在多个操作系统上使用我的开发环境,而不必浪费拥有重复拷贝的额外磁盘空间

问题是IntelliJ似乎不喜欢通过网络驱动器访问项目。它不是真正联网的,因为我的机器上的所有东西都是本地的,但这就是它的感知方式


有没有什么好的方法来设置它,使它可以与共享目录一起工作?我觉得我可能在这里注定要失败,但如果有人知道,那一定是这个网站上的某个人。

我假设你在虚拟机中使用Windows(在*nix虚拟机中,你不会遇到这样的问题)

您需要将网络路径映射到VM中的本地驱动器:

My Computer > Alt + T > Map network drive... > define you path + local drive > Finish
并在IntelliJ中使用此本地驱动器


要跨虚拟机自动化此过程,您可以使用console命令。

如果您的代码需要在多个环境中进行测试,那么这意味着您最终将在多个环境中部署代码,并且您将进行测试以确保其正常工作。这意味着共享代码不是源代码,也不是IntelliJ生成的任何二进制输出,而是由构建脚本创建的工件,这就是您复制到共享位置进行测试的内容。IntelliJ甚至不应该知道任何共享或网络资源。你可能想读一下,上面安德烈亚斯的答案是对你问题的“正确”回答。所有的开发都应该是本地的,代码应该从git签出。除此之外,如果您要处理太多用于部署的重型虚拟机,我建议您研究Docker。它使用vm中的容器来创建占用空间小得多的独立“组件”(java应用程序或其他)。