基于Java IDE的文本(命令行)

时间:2011-09-24 11:13:43

标签: java emacs ide

可能问题标题可能对你来说很奇怪,但我会试着解释一下。

我确实在寻找桌面eclipse的替代品,理想情况下我需要的是直接在我的linux dev-server上编辑源代码。在开发服务器上我没有任何xwindows只是命令行。所以我想使用Putty登录服务器,开发,构建,运行,提交对源代码管理系统的更改。

从文本编辑器我需要:

  • 语法高亮显示
  • autocomletion(至少是基本的)
  • 快速导航项目文件
  • 基本重构:更改类名?将课程移到其他人 包,更改方法签名
  • 运行构建而无需离开编辑器窗口
  • 运行svc / git命令而无需离开编辑器窗口

从第一眼看,emancs似乎就是我所需要的,但我不确定。

感谢。

4 个答案:

答案 0 :(得分:9)

我认为你接近并不好。直接在您的开发服务器上开发并不是一个好习惯。但这不是问题......

就个人而言,我最喜欢的编程文本编辑器是emacs。我也是一名Java开发人员。我正在使用Eclim。根据{{​​3}}:

  

eclim的主要目标是将Eclipse功能引入Vim编辑器。最初的目标是在vim中提供Eclipse的java功能,但是已经添加了对各种其他语言(c / c ++,php,python,ruby,css,html,xml等)的支持,还计划了其他几种语言。

正如我所说,我主要使用Emacs。所以,我正在使用Eclim Website(Vim插件非常酷且先进):

  

Eclim是一个Eclipse插件,它通过服务器接口公开Eclipse功能。启动此服务器时,可以使用命令行实用程序eclim向该服务器发出请求。

     

Emacs-eclim使用eclim服务器将eclipse与emacs集成。这个项目想要从eclipse到emacs带来一些宝贵的功能。

如果您使用Emacs,您还可以使用JDEE模式。就个人而言,我不喜欢这种模式:太复杂,维护不够。

答案 1 :(得分:3)

Sandro的答案对于真正的命令行工具来说是一个很好的答案。在unix上,emacs和vim实际上是复杂的命令行编辑器中唯一的游戏,因此对于其中一个的好的Java模式就是你想要的。

但是,我想指出,即使服务器没有X服务器,您仍然可以在其上运行图形程序 - 它们只需连接到另一台计算机上的X服务器,例如您的桌面。听起来很奇怪,但这实际上是X windows的重点:它最初开发的目的是让人们可以在强大的分时机器上运行程序,并从便宜,愚蠢的图形终端访问它们(这是在80年代早期的人们认为这是一个好主意。)

目前,最简单的方法是使用SSH连接到远程计算机,告诉它启用X11转发。使用OpenSSH命令行SSH,这就像添加-X标志一样简单;我不确定你是怎么用PuTTY做的,但我确信这是可能的。一旦您启用X11转发登录,您只需运行X客户端(例如Eclipse或IDEA),它们就会连接到您的本地X服务器。

哦 - 你需要一台本地X服务器。在Windows上,您可以安装Xming

所有这些都需要一些工作(虽然不是很多!),所以如果你只想偶尔进行黑客攻击,那么我的所有方法都与Eclim一致。但是如果你计划进行大量的远程开发,并且你对curses接口没有太多的感情,那么这可能是最舒服的路径。

答案 2 :(得分:1)

在Emacs中做一些关于Tramp的阅读。这允许您在本地运行Emacs,但使用各种网络协议(但通常是ssh)编辑远程文件,就好像它们是本地的一样。从编辑远程文件的缓冲区启动的Shell命令也将在远程服务器上执行。

这与你要求的相反,当你不想在另一台机器上设置Emacs和你的自定义配置时(或者不能这样做),它会更有用,但是值得知道关于。如果您的本地计算机正在运行Windows,并且您正在使用putty,则需要在Tramp中使用plink方法。

我相信vim也有一些类似的功能。

或者如果您可以使用sshfs挂载远程服务器的文件系统,您将获得类似的最终结果(本地编辑器操作远程文件),并可能打开您的选项以利用更熟悉的编辑器来完成工作。

答案 3 :(得分:0)

emacs和vim可以做你想做的事。但是,除非您已熟悉这些工具,否则您应该知道使用它们与使用GUI完全不同。我建议你这样做,这样你就可以从你的PC上编辑源代码,这些源代码可以直接在linux服务器上更改。你可以通过多种方式实现这一目标。

我假设你没有xwindows,因为这个服务器非常有限?