Java IDE для разработчиков с Linux’ом
Дата публикации: 2018-11-15
От автора: трудно представить, где была бы разработка Java-приложений, если бы не существовало операционной системы Linux. Она привлекает все больше поклонников, ведь развивается с каждым годом. Благодаря тому, что над этими системами работает мировое сообщество, а не ограниченный круг сотрудников компании, Линуксы владеют гораздо более широким функционалом, чем их коммерческие оппоненты – Mac и Windows. Если вы начинающий джавист и тоже хотите присоединится к линуксоидам, значит нужно подобрать хорошую среду разработки. Хватит забивать в Google «linux java ide» – читайте все что ниже!
Новичок против
По критике, обрушенной на операционную систему, Linux может соперничать разве что с Windows. Последнюю и вовсе не жалуют разработчики: то, что плохо работает на Windows, гораздо сложнее исправить, чем ошибку в операционной системе из семейства Linux. Сегодня мы не будем говорить о том, насколько хороши эти системы. Зато рассмотрим пункты, которые обычно отпугивают новичков от разработки на Linux.
Среди проблем, характерных для Linux, называют:
трудно использовать. Этот тезис может убедительно звучать из уст разработчика, которому не хватает Photoshop или другого профессионального программного обеспечения. Но, когда речь идет о простых пользователях, для которых нужен браузер, текстовые редакторы и видеокодеки, то этот аргумент сразу ломается. Со всеми «простыми» функциями эти OS отлично справляются. Иногда, даже лучше пресловутого Windows. Старые компьютеры «оживают», когда на него прямыми руками устанавливают качественный дистрибутив;
подключение сторонних устройств. Для полноценной веб-разработки иногда необходимо подключение внешних дисков и других девайсов. К сожалению, начинающие пользователи не знают, что поддержкой «осей» должен заниматься вендор – тот, кто производит устройство. Так что, если Linux не видит накопитель, это вина накопителя, а не операционной системы. К тому же, на рынке уже не встретишь устройство не совместимое с Linux-семейством;
JavaScript. Быстрый старт
Изучите основы JavaScript на практическом примере по созданию веб-приложения
управление системой из консоли. Несмотря на то, что на этот инструмент порицается новичками, это лучшее, что придумали для Linux. Графический интерфейс никогда не даст такой функциональности. Если все, что можно сделать через терминал, оформили бы в GUI, он бы занял целое хранилище. Ну, а скорость и четкость выполнения не сравнима ни с одним интерфейсом. Главное все уметь ;
время работы батареи. Единственный минус для разработчика, который взаимодействует с портативным ПК (80%). Windows и Mac научились рационально распределять использование батареи. Ни один «голый» дистрибутив не может с ним сравниться. И это очевидно: в распоряжении сообщества разработчиков Linux нет таких экспериментальных возможностей, как у компаний Apple и Microsoft. Лучшее, что они могут предложить для Linux – это некоторые утилиты, которые оптимизируют батарею.
IDE, которых много
Сам Linux очень хорош для Java: это будто операционная система, которая является средой разработки. Сама операционная система разработана на основе компилируемых языков. Значит, лучшее, что можно создать для Linux – это группа компиляторов, которые будут оптимизировать работу системы. Им стал GCC (GNU Compiler Collection). Кроме компиляции, GCC выполняет функцию фронта для языков C, С++, Java. И это не все плюшки, которые Linux приготовил для программистов. Сегодня эта система стоит на 3 из 5 машинах разработчиков. IDE для Java, которые поддерживают Linux – масса.
Каждый разработчик ставит к среде разработки определённые требования. К примеру, кому-то предельно важна стоимость программного обеспечения. И это не порок: когда вы программируете на Java лишь для утилитарных целей своего предприятия, трудно раскошелится на платный софт. Для других нужно чтобы IDE поддерживала сразу несколько операционных систем, для работы в команде это необходимое условие.
Множество школ, колледжей и университетов используют Java, как первый язык программирования для ученика. Стоит ли говорить на какой платформе работают школьные компьютеры? Конечно же Linux! Ведь это гораздо дешевле, чем приобретение корпоративной лицензии для машин. Для обучения нужна и среда разработки, которая не будет генерировать код, но подсветит место ошибки. Выбрать лучшую не получится, но можно отметить сильные стороны каждой из сред разработки на Линукс.
Топ по категориям
Сегодняшний топ-лист сред для разработки на Линукс чем-то напомнит школьный конкурс красоты: без титула не останется ни один участник. К тому же, зачем описывать IDE, которые не имеют никаких достоинств? Концентрируя внимание на том, что лучше для Linux и эффективности самой программы, мы поможем новичку выбрать среду разработки, которая будет выполнять конкретную роль.
JavaScript. Быстрый старт
Изучите основы JavaScript на практическом примере по созданию веб-приложения
Универсальность не стоит денег
Обычно стоит, но не в случае с JDeveloper. Это среда разработки на Java, которая имеет славу наиболее универсальной IDE, если говорить о языке Java. Является одной из сред разработки для Java, которая разработана компанией Oracle. Их главной целью было создание Java IDE, которая вытеснит всех других игроков из этой ниши.
JDeveloper поддерживает взаимодействие с системами контроля версий, такими как Git. Благодаря этому, среда разработки активно используется в open-source проектах, включая и сводные дистрибутивы Linux. Вместе с гит-подобными в эту IDE внедрили поддержку облака от компании Oracle, редакторы всех основных веб-языков и веб-сервер. JDeveloper впечатляет разнообразием и функциональностью графического интерфейса, что делает его привлекательным для новичков. Кроме того, что эта программа отлично ладит с Java-кодом, она еще и написана на Java, что дает повод для создания расширений к этому ПО.
Фактором выбора для серьезных разработчиков стала поддержка Java EE – фреймворка по созданию приложений с уклоном на e-commerce. Тем не менее, JDeveloper не так распространен, как другие среды разработки на Линукс. Полноценно он ориентирован на Java, а один язык редко используется в крупной разработке. Хотя для Java трудно найти что-то более подходящее.
Лидер фримиума – NetBeans
Вот вам еще один пример софта от компании Oracle. Здесь нет прямой конкуренции «сам с собой», и вы поймете почему: это две разных среды разработки, которые используются для разных целей. Общим здесь будет разработка на Java и бесплатное распространение.
NetBeans не только разработан на Java, как и предшественник, но и является настоящим open-source, с двумя GPL на структурные элементы программы. Это значит, что все необходимые улучшения может провести тот, кто использует программу – джавист.
Из бесплатных IDE, NetBeans является наиболее распространенной средой разработки, в том числе и для Linux. Считается, что «бобы» всецело ориентированы на веб-разработку, и это не беспочвенные заявления. Среда поддерживает PHP, Ruby и Python – лидеров веба. Правда для этих PL необходимо установить соответствующий плагин.
У NetBeans есть еще один очень привлекательный элемент для разработки – GUI Builder. Из названия вы могли догадаться о его предназначении: составление интерфейсов для программ. Только у NetBeans он делает программирование все больше похожим на дизайн. Вы просто перетаскиваете нужные элементы и конструируете из них интерфейс.
Лидер топа в будущем – MyEclipse
Со средой разработки Eclipse вы уже, наверняка, знакомы – одна из самых популярных в свободном доступе. Ее создали в ответ на Visual Studio и понемногу она отбирает поклонников у продукта Microsoft.
Для Java-разработчика Eclipse привлекателен тем, что владеет Java Development Tools, которые существенно ускоряют разработку. Ну, а если к этому добавить еще различных фишек из My, получается полноценный элемент для веб-разработки на Java.
По сути, это совокупность плагинов и расширений Eclipse. MyEclipse можно собрать самостоятельно, скачав плагины из магазина на сайте eclipse.org. Но, здесь уже все адаптировано для фулл-стека: присутствует даже редактор изображений, хоть и довольно примитивный. Несмотря на красивый лозунг – «Лучшая Java EE IDE для разработчика-фуллстека», продукт еще не нашел признания у масс. Впереди развитие!
Оффтоп: кроме этих серьезных инструментов, существуют и решения для обучения такие, как DrJava. Исключительно университетский вариант, но, как это бывает среди программистов, существуют фанаты этой системы. Ее легко настроить и немедленно приступить к созданию программы. Здесь вы не установите массу плагинов и не расширите функционал. Но, как инструмент обучения – эта среда разработки идеальна. Особенно, если учесть, что она «дружит» с Linux. Популярности этой IDE способствует и то, что у нее не так много конкурентов. Самый яркий из них – BlueJ, но с ним мы встретимся в других обзорах. А пока все!
JavaScript. Быстрый старт
Изучите основы JavaScript на практическом примере по созданию веб-приложения
Full-Stack практика. Создание JavaScript блога
Создание веб-приложения с нуля на JavaScript, NodeJS, ExpressJS
Источник
Настраиваем рабочее окружение для разработки на Java под Linux
Ну вот, эпоха моего вынужденного эникейства подошла к концу. Снова я в своей струе, занимаясь своей любимой java, правда, все равно с некоторым таким горьким послевкусием. Разрабатывая ПО для банков и до этого периодически отходя к 1С, почему то у меня теперь четкая ассоциация с тем, что пишу туже конфигурацию 1С, но только на джаве. Ладно, хоть мозги снова запущу, деградировавшие на прошлой работе.
Как всегда заведено в программерских конторах, работать приходилось под Линуксом. Почему-то в офисе любимым дистрибутивом оказался Mint, уж с чем такое связано мне не понять. Упрощенный Убунту уж явно путь в никуда, только упрощенный синтаксис apt уже заставляет лениться и потом работая в Debian как-то себя не очень комфортно начинаешь ощущать.
Ну что поделать, Mint так Mint. Остается лишь настроить для разработки рабочее окружение.
Итак, сама разработка ведется на старой java 1.7, потому как ядро программы написано именно на ней. Поэтому я и решил написать такой небольшой мануал для тех, кто столкнется с такими небольшими проблемами.
Итак, пишем на java 1.7, используем IntelliJ IDEA Community в качестве IDE, SQL Developer в качестве управления базами данных, git и maven в качестве сборщика.
Вот тут есть небольшие нюансы, о которых я и хотел рассказать. В Ubuntu и его производные уже входит OpenJDK, что нам в корне не подходит. Ну не совсем они совместимы с оракловой джавой, хоть ты тресни. В итоге его сносим:
Все, больше дефолтный jdk нас не беспокоит. Теперь нужно установить нужные нам версии оракловой джавы. Сразу сделаю уточнение – мой стенд работает на джаве 1.7, а вот последняя версия sql developer – на jdk 1.8. Поэтому нам нужно будет установить обе версии. Нам нужно будет подключить нужный оракловый репозиторий, для этого в терминале введем:
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
sudo apt-get install oracle-java8-installer
На самом деле, здесь я немного сделал не совсем правильный ход, удалив сначала openjdk. Гораздо лучше сначала установить оракловые пакеты, а потом сделать чистку дефолтного пакета, чтобы зависимости не нарушились. Но у меня система была чистая, поэтому я могу так поступить. Вы же делайте на свое усмотрение.
Итак, обе версии джавы установлены в системе. Однако есть одно «но» — при запуске команды java –version вам система покажет, что установлена именно 1.8 в качестве jdk по умолчанию. Лично меня это в корне не устраивает. К счастью, в Debian подобных системах можно легко переключаться между различными версиями джавы всего одной строчкой кода:
sudo update-java-alternatives -s java-7-oracle
Соответсвенно, эта же команда будет для переключения на джава 8, только вместо цифры 7 нужно поставить 8.
Если захотите указать java 1.7 в качестве дефолтной системы, делается это командой:
sudo apt-get install oracle-java7-set-default
Теперь установим Sql Developer. Вот здесь и начинаются пляски с бубном, так как этой среды пока нет в виде deb пакетов. Что ж, выкрутимся таким способом:
1. Выкачиваем rpm пакет на компьютер.
2. Теперь при помощи утилиты alien мы преобразуем скачанный пакет в deb. У меня это версия 4.1.5.21.78, поэтому команда будет выглядеть в моем случае так:
sudo alien ./sqldeveloper-4.1.5.21.78.noarch.rpm
3. Установим преобразованный пакет:
sudo dpkg -i ./ sqldeveloper-4.1.5.21.78_all.deb
После этого осталось сделать очень важную вещь – прописать путь для sql developer к jdk 1.8, иначе на 1.7 он у вас просто не заведется. Для этого в файле sqldeveloper.conf нужно раскомментировать строчку с указанием пути до jdk и прописать нужный путь в него. Сохранить и проверить. Студия должна завестись.
Теперь остается установить в систему maven, git и Идею. С IntelliJ IDEA Community все просто – скачиваем и запускаем start.sh.
maven мы просто поставим стандартными средствами:
sudo apt-get install maven
Проверим, что он нормально установился:
git мы поставим таким же способом:
После этого обновим зависимости:
И перезагрузим систему. Все, на примере моего рабочего окружения для стенда я показал, как настроить весь необходимый инструмент для java разработки. К сожалению, данное руководство весьма поверхностно и здесь не описано множество необходимых настроек для всего этого инструментария. Но все это нужно делать индивидуально под тот или иной проект. Поэтому тут вы уже сами должны сделать все необходимое. Учтите одно – при разработке на java под любой платформой вам все равно придется часто переключаться между различными jdk. Это абсолютно нормальное явление для этой технологии. Слишком много различного кода написано на старых версиях платформы и его нужно поддерживать и постепенно переписывать.
Еще одно напутствие тем, кто решился изучать этот язык и технологию – непонятно его будущее. Да, вышел jdk 1.9, однако Оракл почему-то не анонсировал выход EE 1.9, а именно интерпрайзовская джава служит локомотивом для солидной разработки. Тем не менее, язык очень простой. Я серьезно. По сравнению с C++ ява детский лепет. Честно говоря, как по мне, он даже проще C#, так как в нем очень простой и очевидный синтаксис. Тем не менее, я скоро начну серию уроков по java, так что наведывайтесь на мой блог 🙂
Источник