Показаны сообщения с ярлыком Eclipse SDK. Показать все сообщения
Показаны сообщения с ярлыком Eclipse SDK. Показать все сообщения

четверг, 15 января 2015 г.

Механизм ограничений на импорты в Eclipse (Access restriction)

Возможно каждый использующий интегрированную среду разработки Eclipse SDK программист сталкивался с подобной ошибкой: Access restriction: The type JLabel is not accessible due to restriction on required library ..\lib\rt.jar


Механизм ограничений на импортируемые классы появился в Eclipse 3.1 и предназначен в первую очередь для разработчиков плагинов, чтобы бить по рукам за доступ ко внутренним API бандлов. Выглядят данные ограничения следующим образом: в (Project) Properties -> Java Build Path -> Libraries -> JRE определены Access Rules для всей JRE или для каждого jar'а внутри данной JRE. По-умолчанию проект создается в среде исполнения (Execution Environment) JavaSE-1.7, которая накладывает ограничения на rt.jar - запрещены все пакеты javax.* кроме 160+ базовых.


Проблема с классами из Swing может возникнуть, если в результате экспериментов разработчик выставит в качестве Execution Environment или JRE-1.1, или вообще какие-то CDC/OSGi-Minimum. При работе с классами Eclipse проблема может возникнуть при попытке использования неразрешенных классов.

Можно отказаться от использования Execution Environment и при создании проекта выбирать опции JRE - Use a project specific JRE или Use default JRE. Все советы вида "удалите из проекта System Library, а потом руками добавьте ее" основаны именно на этом - замените Execution Environment на просто JDK.

При необходимости можно изменить поведение Eclipse, для этого есть два пути:

Windows -> Preferences -> Java -> Compiler -> Errors/Warnings

(Project) Properties -> Java Compiler -> Errors/Warnings


Нужно поменять значение у опции Forbidden References на Warning (по-умолчанию - Error), но делать это нужно в самом крайнем случае.

Для получения более подробной информации можно посмотреть данный пост или этот вопрос на Stack Overflow.

Понравилось сообщение - подпишитесь на блог

среда, 3 декабря 2014 г.

Как подружить IDE Eclipse и WebSphere Liberty Profile

В шестой версии спецификации Java EE было введено понятие профилей. Как определено в спецификации, профиль - это набор технологий и API, предназначенный для создания соответствующего типа приложений. В Java EE 6 определены следующие профили:

  • Full Platform - предназначен для разработчиков, которым нужен полный набор технологий Java EE для создания корпоративных приложений.

  • Web Profile - обеспечивает поддержку веб-технологий и является подмножеством full platform. Предназначен для разработчиков, не нуждающихся в полном наборе технологий Java EE.

Хорошая новость заключается в том, что сервер приложений IBM WebSphere Application Server обеспечивает поддержку обоих профилей. Если вам нужна вся мощь платформы Java EE, то вы можете воспользоваться IBM WebSphere Application Server Full Profile, если же вам нужна удобная среда для разработки и эксплуатации веб-приложений с дополнительными возможностями (EJB, MOM, Web-services, NoSQL-СУБД, интеграция с z/OS), то к вашим услугам IBM WebSphere Application Server Liberty Profile, о работе с которым я расскажу в данной статье.

среда, 25 июня 2014 г.

Eclipse Luna

Очередной июньский релиз Eclpse SDK.

Сегодня вышла новая версия замечательной и фактически самой распространенной и известной среды разработки - Eclipse SDK. Скачать релиз можно с обновленной страницы загрузки.

Так же можно посетить отдельную страницу релиза.

Для разработчиков на Java самым важным компонентом среды является конечно же Java Development Tools (JDT). Из основных нововведений стоит отметить полную поддержку Java 8 из коробки (в Kepler нужно ставить патч на JDT). Люди из мира Linux, привыкшие пользоваться Vim и Emacs, оценят новую темную схему. Так же стоит отметить, что наконец-то коллеги доделали разделение экранов редактирования кода, теперь открыть одновременно два окна на одном экране можно всего-лишь нажатием комбинации клавиш, причем разделение можно сделать как по вертикали, так и по горизонтали. Ну и конечно нас всех ждет множество других улучшений косметического характера (в частности теперь можно скрывать строку кнопок навигации и поиска, если вы ею все равно не пользуетесь, это позволяет выиграть место по вертикали).

Традиционно вместе со средой разработки для Java обновляется большинство основных проектов: Spring Tool Suite, C/C++ Development Tools (CDT), Eclipse Communication Framework (ECF), JavaScript Development Tools (JSDT), Web Tools Platform (WTP), EGit, ну и конечно же "внутренности": реализация OSGi - Equinox, SWT и е4. Всего нам обещают обновление 76-ти проектов. Все проекты доступны в Eclipse Marketplace.

Позволю себе отметить два интереснейших проекта.

Eclipse Recommenders. Это воистину киллер-фича. База исходного кода анализируется с помощью байесовских сетей и строится модель использования. Соответствующий плагин к Eclipse при использовании автоподстановки (Ctrl + Space) предлагает элементы кода в зависимости от частоты их использования в проанализированной базе, например при автоподстановке после System.out. он предложит сначала print(), потом println() и т.д., а не будет перечислять методы по алфавиту как в других IDE. Аналогичные возможности реализованы при переопределении методов и в цепочках вызовов. Можно подключать свои модели + есть модели для популярных фреймворков, но их надо искать. В поставке идет модель для JDK и многих проектов Eclipse, в частности упрощается процесс разработки на SWT.

Новый расширяемый движок сниппетов (шаблонов кода) - SnipMatch. Иногда при использовании API мало вызвать метод, его в добавок нужно обернуть в try-with-resource или выполнить какую-то подготовительную работу. Теперь можно написать снипеты для своего фреймворка и выложить их куда-нибудь в Git-репозиторий. Eclipse может подключаться к таким репозиториям и предлагать шаблоны кода из них. В итоге разработка становится существенно быстрее. Естественно есть встроенный редактор шаблонов. Вместе со SnipMatch уже поставляется большое количество шаблонов + в сети есть репозитории для популярных фреймворков, например Vaadin.

О самых последних новостях из мира Eclipse можно узнавать, подписавшись на планету Eclipse, - агрегатор англоязычных блогов, посвященных данной платформе. Большинство блогов ведут лидеры тех или иных проектов, поэтому информация представлена из первых рук. Напомню, что Eclipse - это не только удобная IDE, но фактически целый отдельный мир программирования на Java по объему сопоставимый с Java EE и на мой взгляд превосходящий Spring Framework со всеми его ответвлениями.

Приятной вам разработки!

Понравилось сообщение - подпишитесь на блог

четверг, 18 октября 2012 г.

Библиотеки, необходимые для сборки и развертывания OSB и SOA Suite проектов

Одной из популярных сегодня техник создания программного обеспечения является непрерывная интеграция. При внедрении данного процесса при разработке сервисной шины предприятия, основанной на Oracle Service Bus (OSB) или Oracle SOA Suite, требуется решить две задачи:

  • обеспечить сборку проектов OSB и SCA-композитов SOA Suite;

  • обеспечить развертывание собранных компонентов на сервере приложений Oracle WebLogic.

В сети представлено много материалов, описывающих автоматизацию этих задач. Рекомендую статью Станислава Девятова Непрерывная интеграция для Oracle SOA Suite 11g. В данной же заметке хочется рассмотреть вопрос минимизации количества необходимых библиотек.

понедельник, 12 декабря 2011 г.

Установка и использование WebLogic Server 12c в версии для разработчиков


На прошлой неделе Oracle сделала доступным для скачивания набор дистрибутивов сервера приложений нового поколения, основы линейки продуктов Oracle Fusion Middleware, - WebLogic Server 12c. Данный продукт доступен как в виде инсталляторов под Windows, Linux и Mac OS X, так и в виде двух ZIP-архивов, предназначенных исключительно для разработчиков. В данной заметке мы рассмотрим как установить WebLogic Server из данных архивов и создать демонстрационный домен, а так же написать и развернуть в данном домене небольшое Java EE 6 приложение, используя Oracle Enterprise Pack for Eclipse 12.1.1.

пятница, 3 июня 2011 г.

Создаем Hello World на Oracle Service Bus с использованием Oracle Enteprise Pack for Eclipse


В данной заметке Суровый челябинский программист расскажет о том, как создать простой сервис на Oracle SOA Suite и обеспечить взаимодействие с данным сервисом с помощью сервисной шины предприятия Oracle Service Bus (OSB). При этом, для создания проекта OSB будет использоваться интегрированная среда разработки Eclipse с комплектом расширений под названием Oracle Enterprise Pack for Eclipse (OEPE). Для создания же сервиса будет использоваться основная интегрированная среда разработки от Oracle - JDeveloper.

Предполагается, что у читателя уже установлены WebLogic, Oracle Service Bus, Oracle SOA Suite, JDeveloper и OEPE. Я использовал OSB и SOA Suite версии 11.1.1.5, но, думаю, что работа с ранними версиями в целом аналогична.

четверг, 28 октября 2010 г.

Eclipse полностью работоспособен c OpenJDK на Mac'ах


Сейчас в интернете активно обсуждается следующая тема: Apple отказывается от поддержки своей JVM. Ситуация интересна тем, что официальной Oracle JVM для MacOS X нет. Замечу, что ситуация несколько напоминает ситуацию, которая сложилась с Microsoft во времена JDK 1.2: корпорация зла распространяла свою версию JVM, которая в лучших традициях Microsoft была не совместима со стандартом. Apple точно так же разрабатывала свою версию JVM, которая со стандартом была совместима, однако имела некие "секретные API" для лучшего взаимодействия с графической подсистемой вендора.

Позиция Apple в целом понятна:
1. Убиваем JDK на платформе Mac.
2. Без JDK не работает Eclipse.
3. Соответственно не работает Android Development Tool.
4. ...
5. Profit!

Однако в данном вопросе Apple просчитались. Eclipse замечательно работает на OpenJDK port - SoyLatte без X11. Известный Eclipse и OSGi евангелист - Neil Bartlett приводит в доказательство скриншот:



Все дело в использовании SWT. Да, OpenJDK не имеет оптимизаций, которые есть в Apple JVM, однако они и не нужны, потому что SWT использует нативный код для отрисовки графики, а не Swing/AWT.

Соответственно, другие приложения, использующие SWT, например RSSOwl, точно так же будут полностью работоспособны, а вот гарантировать полную работоспособность NetBeans и IDEA не представляется возможным.

Понравилось сообщение - подпишитесь на блог

среда, 18 августа 2010 г.

Настраиваем взаимодействие Eclipse - GlassFish v3


Сервер приложений GlassFish является Reference Implementation спецификации JavaEE 6 (так же известной под названием JSR-316), поэтому знакомство с ним будет полезно любому разработчику, планирующему использовать как весь стек JavaEE, так и некоторые его компоненты.

Интегрированная среда разработки Eclipse позволяет упростить взаимодействие с сервером приложений, в частности - автоматизировать создание специфичной для него структуры проекта, облегчить запуск/останов сервера и разворачивание на нем разрабатываемого приложения. Так же очень полезной функцией IDE является обеспечение горячего разворачивания приложения - возможности заменять классы и статический контент "на лету", т.е. непосредственно после компиляции, не прибегая каждый раз к сборке архивов модулей (war, ear, rar, jar) и переустановке приложения целиком. Данная возможность существенно ускоряет разработку и отладку приложения.

пятница, 16 июля 2010 г.

SchemeScript: разрабатываем на языке Scheme в Eclipse



Введение


Scheme - функциональный язык программирования, один из двух наиболее известных в наше время диалектов языка Lisp. Гай Стил (Guy L. Steele) и Джеральд Сассмен (Gerald Jay Sussman) из Массачусетского технологического института (MIT) — создали его в середине 1970-х годов. Именно Scheme долгое время применялся в MIT для обучения программированию (сейчас заменен на Python) и именно на Scheme написаны примеры в знаменитой книге "Структура и интерпретация компьютерных программ" - библии всякого уважающего себя программиста.

Для интегрированной среды разработки Eclipse существует плагин, позволяющий программировать на Scheme. В данной статье мы рассмотрим основные возможности данного плагина, изучим процесс его использования и процедуру настройки.

четверг, 24 июня 2010 г.

Знакомимся: Eclipse Marketplace - все популярные плагины в одном месте


В рамках релиза Eclipse Helios был запущен единый репозиторий плагинов для этой замечательной среды, а также приложений, построенных на базе платформы Eclipse RCP и услуг, оказываемых по данной платформе.

Называется репозиторий - Eclipse Marketplace и располагается по адресу. В состав репозитория на сегодняшний день входит 847 утилит (плагинов), 89 приложений и 84 услуги.

Удобно, что для Eclipse IDE был разработан клиент для Marketplace, доступный, что называется, "из коробки". Данный клиент позволяет легко искать, выбирать, устанавливать и обновлять плагины и приложения, входящие в состав репозитория. Давайте рассмотрим подробнее возможности этой утилиты и порядок работы с нею.

среда, 23 июня 2010 г.

Вышел Eclipse 3.6 Helios


Сегодня Eclipse Foundation объявили о выходе Eclipse 3.6 Helios.



Помимо IDE для Java и средства разработки плагинов Eclipse PDE в состав релиза вошли 39 проектов среди которых WTP (JavaScript + HTML + CSS), среды разработки для C/C++ и PHP, средство моделирования бизнес процессов - Eclipse BPMN, утилиты для построения сервисно-ориентированных систем - Eclipse SOA Tools, конечно же Eclipse Communication Framework и Eclipse Rich Ajax Platform. Полный список проектов доступен здесь.

Основной новостью года стала поддержка распределенной системы контроля версий Git "из коробки" с помощью плагина EGit, что послужило толчком к переводу на Git некоторых Eclipse-проектов.

Еще одним интересным нововведением стал единый репозиторий популярных плагинов - Eclipse Marketplace. Сам Eclipse IDE содержит удобный клиент для Marketplace, позволяющий установить нужный вам плагин за 2-3 клика.

Официальная страница релиза находится здесь: Eclipse Helios, скачать же можно по адресу.

Понравилось сообщение - подпишитесь на блог или читайте меня в twitter

пятница, 14 мая 2010 г.

Eclipse RCP: Сборка и развертывание RCP-приложения. Понятие "Продукт"


Итак, в прошлый раз мы рассмотрели понятие RCP Application и поняли, что процесс развертывания приложения вручную достаточно трудоемок. Сегодня мы поговорим о механизме, который позволяет добавить к приложению специфичные для него параметры брендинга, такие как иконки, лицензию, экран загрузки, окно приветствия и т.д. и, самое главное, создать нужную структуру каталогов, файлы конфигурации и экспортировать все бандлы, от которых зависит приложение. Такой механизм называется продуктом (product).

Проект состоит из двух частей: файла с расширением product в котором хранятся все специфичные для приложения настройки (иконки и т.д.) и точки расширения org.eclipse.core.runtime.products с помощью которой продукт регистрируется в реестре. Рассмотрим подробно создание продукта с помощью встроенного в Eclipse PDE редактора и развертывание приложения с помощью соответствующего визарда. Все примеры приведены для Eclipse Helios, запущенного под ОС Gentoo GNU/Linux.

среда, 11 ноября 2009 г.

ECF: Средства для взаимодействия команды разработчиков с помощью Eclipse


Мы уже успели поговорить и о том, что такое Eclipse Communication Framework, и о том, как программировать с его помощью. Сегодня рассмотрим графические средства, которые ECF предоставляет для Eclipse (и, соответственно, RCP-приложений).

Под графическими средствами подразумевается перспектива Communications и виды, которые представлены в группах Communications и File Transfer. Прежде всего эти компоненты GUI обеспечивают возможность взаимодействия разработчиков, использующих Eclipse между собой в команде. Однако, обо всем по-порядку.

среда, 24 июня 2009 г.

Вышел долгожданный релиз Eclipse Galileo


Свершилось! Eclipse Foundation точно по расписанию выпустили релиз Eclipse Galileo.



Вместе с IDE для Java-разработчиков выпущено еще 33 проекта: среды разработки для Ruby, PHP, C/С++, WEB (JavaScript + HTML + CSS), J2EE и т.д. Скачать новый Eclipse можно с официального сайта проекта. Почитать о нововведениях на разных языках можно здесь, а вот здесь лежит красивая обоина.

Я уже скачал и пользуюсь.

Понравилось сообщение - подпишитесь на блог или читайте меня в twitter

вторник, 16 декабря 2008 г.

Создаем веб-приложение на базе Tapestry в Eclipse WTP


Здравствуйте, уважаемые читатели. Суровый челябинский программист все еще жив, он по прежнему очень суровый и временами даже челябинский.

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

Вообще есть плагин под эклипс для работы с Tapestry, но плагин очень старый, для 3й версии фреймворка. Соответственно, никаких преимуществ в его использовании я не вижу, поэтому работать будем без специальных tapestry-плагинов.

Начнем с того, что определимся с инструментарием. Итак, будем иметь:

  • Eclipse 3.4 (впрочем не принципиально, 3.2 и 3.3 тоже подойдут) с установленным WTP

  • Tapestry 5.0.15

  • Tomcat 6 (хотя работать будет и на 5-й версии)



Для тестового приложения я создаю отдельный воркспэйс. Также устанавливаю томкат, просто распаковывая zip-архив в отдельную папку (это под Windows). Папка с томкатом находится, естественно, вне воркспэйса.