Текстовая (командная строка) Java IDE - PullRequest
4 голосов
/ 24 сентября 2011

Возможно, название вопроса может показаться вам странным, но я постараюсь объяснить.

Я ищу альтернативу затмению рабочего стола, в идеале мне нужно редактировать исходные коды непосредственно на моем Linux-сервере Linux.На сервере dev у меня нет xwindows, просто командная строка.Поэтому я хотел бы войти на сервер с помощью Putty, разработать, собрать, запустить, зафиксировать изменения в системе управления версиями.

Из текстового редактора мне потребуется:

  • подсветка синтаксиса
  • автозаполнение (хотя бы базовое)
  • быстрая навигация через файлы проекта
  • базовый рефакторинг: изменить имя класса?переместить класс в другой пакет, изменить сигнатуру метода
  • запускать сборку без необходимости выходить из окна редактора
  • запускать команды svc / git без необходимости выходить из окна редактора

измне кажется, что мне нужен первый взгляд, но я не уверен.

Спасибо.

Ответы [ 4 ]

9 голосов
/ 24 сентября 2011

Я думаю, что вы подходите не хорошо.Разработка непосредственно на вашем сервере devel не является хорошей практикой.Но это не вопрос ...

Лично мой любимый текстовый редактор для программирования - emacs.Я также разработчик Java.Я использую Eclim.Согласно веб-сайту Eclim :

Основная цель eclim - предоставить функциональность Eclipse редактору Vim.Первоначальная цель состояла в том, чтобы предоставить Java-функциональность Eclipse в vim, но была добавлена ​​поддержка различных других языков (c / c ++, php, python, ruby, css, html, xml и т. Д.) И планируется еще несколько.

Как я уже сказал, я использую в основном Emacs.Итак, я использую emacs-eclim (плагин Vim очень крутой и продвинутый):

Eclim - это плагин Eclipse, который предоставляет возможности Eclipse через интерфейс сервера.Когда этот сервер запущен, утилита командной строки eclim может использоваться для выдачи запросов на этот сервер.

Emacs-eclim использует сервер eclim для интеграции eclipse с emacs.Этот проект хочет перенести некоторые бесценные функции из затмения в emacs.

Если вы используете Emacs, вы также можете использовать режим JDEE.Лично мне не нравится этот режим: слишком сложный, недостаточно поддерживаемый.

3 голосов
/ 24 сентября 2011

Ответ Сандро хорош для настоящего инструмента командной строки.В Unix emacs и vim действительно единственные игры в городе, когда речь идет о сложных редакторах командной строки, поэтому хороший Java-режим для одного из них - то, что вам нужно.

Однако я хочу отметитьчто даже если на сервере нет X-сервера, вы все равно можете запускать на нем графические программы - им просто нужно подключиться к X-серверу на другом компьютере, например на вашем рабочем столе.Звучит странно, но в этом-то и весь смысл X windows: он изначально был разработан для того, чтобы люди могли запускать программы на мощных машинах с общим временем и получать к ним доступ с дешевых, тупых графических терминалов (это было еще в начале 80-х, когда людия подумал, что это хорошая идея).

В наши дни самый простой способ сделать это - использовать SSH для подключения к удаленному компьютеру, сообщив ему о включении пересылки X11.С SSH командной строки OpenSSH это так же просто, как добавить флаг -X;Я не уверен, как ты это делаешь с PuTTY, но я уверен, что это возможно.После того, как вы вошли в систему с включенной переадресацией X11, вы можете просто запустить X-клиенты (такие как Eclipse или IDEA), и они подключатся к вашему локальному X-серверу.

О - вам понадобится локальный X-сервер,В Windows вы можете установить Xming

Все это занимает немного работы (хотя и не так много!), Поэтому, если вы просто хотите время от времени взламывать, все мои средства идут сEclim.Но если вы планируете много заниматься удаленной разработкой и не очень привязаны к интерфейсам curses, это может быть самый удобный маршрут.

1 голос
/ 24 сентября 2011

Прочитайте немного о Tramp в Emacs.Это позволяет вам запускать Emacs локально, но редактировать удаленные файлы, как если бы они были локальными, используя любой из множества сетевых протоколов (но обычно это ssh).Команды оболочки, инициированные из буфера, редактирующего удаленный файл, также будут выполняться на удаленном сервере.

Это как бы противоположно тому, что вы просили, и более полезно, когда вам не нужно настраиватьEmacs и ваши пользовательские конфигурации на другом компьютере (или не могут), но об этом стоит знать.Если ваш локальный компьютер работает под управлением Windows, и вы используете putty, вам нужно будет использовать метод plink в Tramp.

Я считаю, что vim также имеет некоторые аналогичные функции.

Или есливы можете смонтировать файловую систему удаленного сервера с помощью sshfs, вы достигнете аналогичного конечного результата (локальный редактор манипулирует удаленными файлами) и потенциально откроете свои опции, чтобы использовать более знакомые редакторы для работы.

0 голосов
/ 24 сентября 2011

emacs и vim могут делать то, что вы хотите.Однако, если вы уже не знакомы с этими инструментами, вы должны знать, что их использование не похоже на использование графического интерфейса пользователя.Я предлагаю вам сделать это, чтобы вы могли редактировать исходные тексты с вашего компьютера, которые изменяются непосредственно на вашем сервере Linux.Есть несколько способов сделать это.

Я предполагаю, что у вас нет xwindows, потому что этот сервер очень ограничен ??

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...