在远程机器上运行 Eclipse 项目

Posted

技术标签:

【中文标题】在远程机器上运行 Eclipse 项目【英文标题】:Run Eclipse project on a remote machine 【发布时间】:2011-08-09 17:03:04 【问题描述】:

我一直在使用 Eclipse 在我的本地机器上处理一个 Java 项目。我正在尝试在远程机器上运行它。远程机器是在 Linux 上运行的集群。现在我已经挂载了远程驱动器并通过 Eclipse 编辑了远程文件副本。但是,我正在寻找更强大的东西。有没有办法通过 Eclipse 无缝地做到这一点,即每次我运行项目时,它都在远程机器上运行?

【问题讨论】:

您是否尝试过使用 ssh -X 进行远程 X11 Windows 会话? 是的。日常使用太慢了:( 如果您打算通过 Eclipse IDE 远程调试功能远程调试您的应用程序,您可以按照以下方式进行操作ibm.com/developerworks/opensource/library/os-eclipse-javadebug/… 我之前看过这个。如果我错了,请纠正我,但看起来我需要导出一个 jar 文件并每次将其传输到远程机器,这不是我要找的。​​span> 【参考方案1】: 将您的项目输出文件夹设置为您挂载的远程文件夹(在项目属性->Java 构建路径下)。 然后执行外部工具:ssh user@rometesite -c "java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=4000,suspend=n Main" 在 Eclipse 中启动远程 Java 应用程序(端口 4000)

有关远程调试的更多详细信息,请参阅http://www.ibm.com/developerworks/opensource/library/os-eclipse-javadebug/index.html

【讨论】:

请注意:在 Mac 上,第二个项目符号上的命令将引发“未知密码类型”错误。没有“-c”标志它可以正常工作。【参考方案2】:

目标管理/远程系统资源管理器提供插件以使远程目录与您的项目保持同步。见http://www.eclipse.org/tm/

要远程运行您的程序,您可能必须设置一个外部工具启动配置(从运行>外部工具菜单)并使用 ssh 之类的程序在 linux 集群上远程启动您的 java 应用程序。

【讨论】:

我刚刚检查了 RSE。它允许我编辑远程文件,但我没有看到任何将本地项目同步到远程计算机的选项。我错过了什么吗? 看起来 RSE 的主要价值是远程编辑。见wiki.eclipse.org/… 和bugs.eclipse.org/195997【参考方案3】:

这是一个很棒的教程: http://help.eclipse.org/juno/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Freference%2Fpreferences%2Fjava%2Fdebug%2Fref-execution_environments.htm 这个也很有用:http://java.dzone.com/articles/how-debug-remote-java-applicat

【讨论】:

【参考方案4】:

这对于continuous integration 解决方案来说听起来不错。您是否考虑过设置CruiseControl?我意识到,如果您只是一个开发人员,那么这似乎有点矫枉过正。如果您不想将 JAR 文件移动到远程机器上,您可能也不会为此做好准备。

但是,一旦设置好持续集成,就值得麻烦了。除了自动部署(这是您在此处所要求的)之外,您还将获得一个调试/测试环境,您的团队中的每个人都可以使用。此外,它还迫使您预先解决打包/部署问题,这虽然不好玩,但让您朝着真正的迭代开发过程又迈进了一大步。

【讨论】:

问题是关于应用程序在远程集群中的 ad-hoc、in-dev 运行,而不是 CI/CD。

以上是关于在远程机器上运行 Eclipse 项目的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Eclipse IDE(同一台机器)中远程调试在 Web 逻辑服务器上运行的企业应用程序

Windows下Eclipse提交MR程序到HadoopCluster

使用eclipse连接远程hadoop服务器

在ubuntu上安装eclipse同时连接hadoop运行wordcount程序

使用eclipse编写和运行java程序(基础)

如何在 Eclipse 中的远程计算机上构建 c++ 项目?