Java Community Process (JCP) , созданный в 1998 году, является формальным механизмом, который позволяет заинтересованным сторонам разрабатывать стандартные технические спецификации для технологии Java. Чтобы стать членом JCP, необходимо иметь глубокие знания языка программирования Java, его спецификаций и передового опыта в разработке программного обеспечения. Членство в JCP предполагает детальное рассмотрение профиля кандидата, включая оценку действующими членами. Обычно профессионалов приглашают присоединиться к JCP на основе их вклада и репутации в сообществе Java.
После приглашения новый член проходит оценку Исполнительного комитета JCP, что гарантирует, что он может эффективно вносить вклад в запросы на спецификации Java (JSR). Эти официальные документы описывают предлагаемые спецификации и технологии, которые будут добавлены к платформе Java . Новых членов призывают активно участвовать и играть важную роль в поддержке сообщества Java и его релизов. Крайне важно, чтобы члены обладали опытом и глубокими техническими знаниями в сочетании с большим профессиональным опытом, чтобы внести значительный вклад в рост и использование языка Java .
Членство для организаций и коммерческих структур требует ежегодных взносов, но для физических лиц оно бесплатно. JSR проходят формальные публичные обзоры, прежде чем стать окончательными, и Исполнительный комитет JCP голосует за их утверждение. Окончательный JSR предоставляет эталонную реализацию , которая является бесплатной реализацией технологии в форме исходного кода, и комплект для обеспечения совместимости технологий для проверки спецификации API.
Сам JCP описывается JSR. По состоянию на 2020 год [обновлять]JSR 387 описывает текущую версию (2.11) JCP.
Существуют сотни JSR. Некоторые из наиболее заметных JSR включают:
JSR # | Спецификация или технология | Референтные реализации | Другие реализации |
---|---|---|---|
1 | Спецификация реального времени для Java (RTSJ) 1.0 | ||
3 | Расширения управления Java (JMX) 1.0, 1.1 и 1.2 [1] | ||
5 | Java API для обработки XML (JAXP) 1.0 | ||
8 | Спецификация OSGI Open Services Gateway | ||
9 | Jiro (Спецификация архитектуры федеративного управления) 1.0 | ||
12 | Объекты данных Java (JDO) 1.0 | ||
13 | Улучшенный BigDecimal ( платформа Java, стандартная версия#java.math ) | ||
14 | Добавление универсальных типов в язык программирования Java (начиная с J2SE 5.0) | ||
16 | Архитектура коннектора Java EE (JCA) 1.0 | ||
19 | Корпоративные JavaBeans (EJB) 2.0 | ||
22 | Спецификация API JAIN SLEE (JSLEE) 1.0 | ||
30 | Конфигурация подключенного ограниченного устройства (CLDC) 1.0 для Java ME | ||
31 | Архитектура Java для XML-связывания (JAXB) 1.0 | ||
32 | Спецификация JAIN SIP API (JSIP) 1.0, 1.1 и 1.2 для Java ME | ||
36 | Конфигурация подключенного устройства (CDC) 1.0 для Java ME | ||
37 | Профиль мобильного информационного устройства (MIDP) 1.0 для Java ME | ||
40 | Интерфейс метаданных Java (JMI) 1.0 | ||
41 | Простая функция утверждения (начиная с J2SE 1.4) | ||
47 | Спецификация API логирования (начиная с J2SE 1.4) | ||
48 | Спецификация служб WBEM (начиная с J2SE 1.4) | ||
51 | Неблокируемый ввод-вывод (NIO) (начиная с J2SE 1.4) | Гризли , Нетти | |
52 | Стандартная библиотека тегов JavaServer Pages (JSTL) 1.0 и 1.1 [2] | ||
53 | Спецификации Java Servlet 2.3 и JavaServer Pages (JSP) 1.2 | ||
54 | Подключение к базам данных Java (JDBC) 3.0 | ||
56 | Протокол сетевого запуска Java и API (JNLP) 1.0, 1.5 и 6.0 [3] ( Java Web Start ) | ||
58 | Платформа Java 2, Enterprise Edition (J2EE) 1.3 | ||
59 | Платформа Java 2, стандартная версия (J2SE) 1.4 (Merlin) | ||
63 | Java API для обработки XML (JAXP) 1.1 и 1.2 [4] | ||
68 | Платформа Java, микровыпуск (Java ME) 1.0 | ||
73 | API Java для интеллектуального анализа данных (JDM) 1.0 | ||
75 | Дополнительные пакеты PDA для платформы J2ME | ||
77 | Управление J2EE | ||
80 | Java- USB- API | ||
82 | API Java для Bluetooth | ||
88 | Развертывание приложений Java EE | ||
91 | API для устранения неполадок OSS | ||
93 | Java API для XML-реестров (JAXR) 1.0 | ||
94 | API Java-правил движка | ||
102 | Объектная модель документа Java (JDOM) 1.0 | ||
110 | API Java для WSDL (WSDL4J) 1.0 | ||
112 | Архитектура коннектора Java EE (JCA) 1.5 | ||
113 | API Java Speech 2 (JSAPI2) | ||
114 | Реализации наборов строк Java Database Connectivity (JDBC) | ||
116 | API сервлета SIP 1.0 | ||
118 | Профиль мобильного информационного устройства (MIDP) 2.0 для Java ME | ||
120 | API беспроводного обмена сообщениями (WMA) | ||
121 | API изоляции приложений | ||
127 | JavaServer Faces (JSF) 1.0 и 1.1 [5] | ||
133 | Пересмотр модели памяти Java и спецификации потоков | ||
135 | Java Mobile Media API (MMAPI) для Java ME | ||
139 | Конфигурация подключенного ограниченного устройства (CLDC) 1.1 для Java ME | ||
140 | API протокола определения местоположения сервиса (SLP) для Java | ||
141 | API протокола описания сеанса (SDP) для Java | ||
151 | Платформа Java 2, Enterprise Edition (J2EE) 1.4 | ||
152 | Страницы JavaServer (JSP) 2.0 | ||
153 | Корпоративные JavaBeans (EJB) 2.1 | ||
154 | Спецификации Java Servlet 2.4 и 2.5 [6] | ||
160 | Расширения управления Java (JMX) Удаленный API 1.0 | ||
163 | Архитектура профилирования платформы Java (JPPA), которая включает (помимо прочих спецификаций) спецификацию интерфейса Java Virtual Machine Tools | ||
166 | Утилиты параллелизма (начиная с J2SE 5.0 java.util.concurrent и )java.util.concurrent.atomic java.util.concurrent.locks | ||
168 | Спецификация портлета 1.0 | ||
170 | API репозитория контента для Java (JCR) 1.0 | ||
172 | Спецификация веб-сервисов для Java ME | ||
173 | StAX (потоковый API для XML) | ||
175 | Средство метаданных для языка программирования Java | ||
176 | Платформа Java 2, стандартная версия (J2SE) 5.0 (Tiger) | ||
177 | API служб безопасности и доверия для J2ME (SATSA) | ||
179 | API местоположения 1.0 для Java ME | ||
180 | API протокола инициализации сеанса (SIP) для Java ME | ||
181 | Метаданные веб-сервисов для платформы Java | ||
184 | API мобильной 3D-графики для Java ME 1.0 и 1.1 | ||
185 | Технология Java для беспроводной индустрии (JTWI) | ||
187 | Мгновенный обмен сообщениями ( Java ME и Java SE ) | ||
198 | Стандартный API расширения для интегрированных сред разработки | ||
199 | API компилятора Java | ||
200 | Формат сетевой передачи Pack200 для архивов Java | ||
201 | Расширение языка программирования Java с помощью перечислений, автоупаковки, расширенных циклов for и статического импорта (начиная с J2SE 5.0) | ||
202 | Обновление спецификации файла классов Java | ||
203 | Больше неблокируемого ввода-вывода (Java) (NIO2) | ||
204 | Поддержка дополнительных символов Unicode (начиная с J2SE 5.0 добавлена поддержка Unicode 3.1) | ||
205 | API беспроводных сообщений 2.0 (WMA) 2.0 | ||
206 | Java API для обработки XML (JAXP) 1.3 | ||
208 | Бизнес-интеграция Java (JBI) 1.0 | ||
211 | API обработчика контента | ||
215 | Процесс сообщества Java (JCP) 2.6 | ||
218 | Конфигурация подключенного устройства (CDC) 1.1 для Java ME | ||
219 | Профиль Фонда 1.1 | ||
220 | Корпоративные JavaBeans (EJB) 3.0 | ||
221 | Подключение к базам данных Java (JDBC) 4.0 | ||
222 | Архитектура Java для XML-связывания (JAXB) 2.0 | ||
223 | Скриптинг для платформы Java для Java SE 6 | ||
224 | Java API для XML Web Services (JAX-WS), преемник JAX-RPC | ||
225 | API XQuery для Java (XQJ) | ||
226 | Масштабируемый API векторной 2D-графики для Java ME | ||
229 | API платежей (PAPI) | ||
231 | Привязки Java для OpenGL | ||
234 | API расширенных мультимедийных дополнений для Java ME | ||
235 | Объекты данных службы (SDO) | ||
239 | Привязки Java для OpenGL ES | ||
240 | Спецификация API JAIN SLEE (JSLEE) 1.1 | ||
241 | Язык программирования Groovy | ||
243 | Объекты данных Java (JDO) 2.0 | ||
244 | Платформа Java, Enterprise Edition (Java EE) 5 | ||
245 | Страницы JavaServer (JSP) 2.1 | ||
247 | API Java для интеллектуального анализа данных (JDM) 2.0 | ||
248 | Архитектура мобильных услуг | ||
249 | Архитектура мобильных услуг 2 | ||
250 | Общие аннотации для платформы Java (для функции метаданных для Java ) | ||
252 | JavaServer Faces (JSF) 1.2 | ||
253 | API мобильной телефонии (MTA) | ||
255 | Расширения управления Java (JMX) 2.0 | ||
256 | API мобильных датчиков | ||
257 | API бесконтактной связи ( NFC ) | ||
260 | Обновление технологии тегов Javadoc | ||
269 | API обработки подключаемых аннотаций (для функции метаданных для Java ) | ||
270 | Платформа Java, стандартная версия (Java SE) 6 (Mustang) | ||
271 | Профиль мобильного информационного устройства (MIDP) 3.0 для Java ME | ||
274 | Язык сценариев BeanShell | ||
275 | Спецификация единиц (см. Единицы измерения ) | ||
276 | Метаданные времени разработки для компонентов JavaServer Faces | ||
277 | Система модулей Java | ||
280 | XML API для Java ME | ||
281 | API служб IMS (см. IMS ) | ||
282 | Спецификация реального времени для Java (RTSJ) 1.1 | ||
283 | API репозитория контента для Java (JCR) 2.0 | ||
286 | Спецификация портлета 2.0 | ||
289 | API сервлета SIP 1.1 | ||
290 | Интеграция языка Java и разметки пользовательского интерфейса XML (XML-UI) | ||
291 | Поддержка динамических компонентов для Java SE (см. OSGi ) | ||
292 | Поддержка динамически типизированных языков на платформе JavaTM | ||
293 | API местоположения 2.0 для Java ME | ||
294 | Улучшенная поддержка модульности в языке программирования Java | ||
296 | Фреймворк приложений Swing (Java SE 7) | ||
299 | Контексты и внедрение зависимостей для платформы Java EE (CDI) | Сварка | OpenWebBeans |
301 | JSF Portlet Bridge | ||
303 | Проверка бобов | Валидатор Hibernate | |
307 | API сетевой мобильности и мобильных данных (не является официальным по состоянию на 20 июля 2007 г., но официальный выпуск запланирован на 2 квартал 2008 г.) | ||
308 | Аннотации к типам Java (Java SE 8) | ||
311 | JAX-RS : Java API для RESTful веб-сервисов (1.0 и 1.1) | ||
314 | JavaServer Faces (JSF) 2.0 | Mojarra JavaServer Faces | Apache MyFaces |
316 | Платформа Java, Enterprise Edition (Java EE) 6 | ||
317 | API сохранения Java (JPA) 2.0 | EclipseLink | Спящий режим , openJPA |
322 | Архитектура коннектора Java EE (JCA) 1.6 | ||
325 | Средства связи IMS (ICE) (см. IMS ) | ||
330 | Внедрение зависимостей для Java | ||
336 | Содержание выпуска Java SE 7 | [OpenJDK7] | ? |
337 | Содержание выпуска Java SE 8 | [OpenJDK 8] | ? |
338 | API сохранения Java (JPA) 2.1 | EclipseLink | Спящий режим , openJPA |
339 | JAX-RS 2.0 : API Java для веб-сервисов RESTful | ||
343 | Служба сообщений Java 2.0 (JMS) | ||
352 | Пакет Java | IBM Java Batch [ мертвая ссылка ] | JBeret, весенняя партия |
354 | API Java Деньги и валюты | ||
356 | Java API для WebSocket | ||
365 | Контексты и внедрение зависимостей для Java 2.0 | Сварка | |
367 | Java API для привязки JSON (JSON-B) | Затмение Яссон | Джексон |
370 | Java API для RESTful веб-сервисов (JAX-RS) 2.1 | Проект Джерси | |
374 | Java API для обработки JSON 1.1 | Eclipse JSON-P Архивировано 31.05.2019 на Wayback Machine | Джексон |
376 | Система модулей платформы Java (заменяет 277) | ||
380 | Проверка бобов 2.0 | Валидатор Hibernate | |
901 | Спецификация языка Java , третье издание (JLS) (начиная с J2SE 5.0 включает изменения из JSR 14, 41, 133, 175, 201 и 204) | ||
907 | API транзакций Java (JTA) 1.0 и 1.1 | ||
912 | Java 3D API 1.3 | ||
913 | Процесс сообщества Java (JCP) 2.0, 2.1 и 2.5. [7] | ||
914 | API службы сообщений Java (JMS) 1.0 и 1.1 | ||
924 | Спецификация виртуальной машины Java , второе издание (JVM) (начиная с J2SE 5.0). [8] | OpenJDK | |
926 | Java 3D API 1.5 |
Исполнительный совет JCP характеризовался как « организация, штампующая решения », с тех пор как Oracle приобрела Sun Microsystems (первого разработчика языка Java ). [9]
Apache Software Foundation оставила свое место в совете директоров в декабре 2010 года, поскольку Oracle не захотела лицензировать Technology Compatibility Kit для версии Java от Apache. [10]
Источник: [11]
Награда | Номинант | Вклады | Подробности | JSR # | Победить? |
---|---|---|---|---|---|
Член/участник года JCP | Лондонское Java-сообщество и SouJava | Программа «Примите JSR!» | Поддержка разработчиков Java через JCP. | Победить! | |
Стивен Колеборн | API даты и времени для Java . | Всеобъемлющий и продвинутый. Неутомимая работа. | 310 | ||
Маркус Эйзеле | Активная работа в немецком сообществе Java и в экспертной группе JSR 342. | 342 | |||
JUG Ченнаи | Стать самой активной организацией JCP в Индии и конкурентоспособной сервисной организацией на коммерческом рынке. | ||||
Вернер Кейл | Невероятная энергия и участие в семи JSR, а также в Исполнительном комитете. | ||||
Антуан Сабо-Дюран |
| ||||
Выдающийся лидер спецификаций | Виктор Граци, | API Java Деньги и валюты | Специализированный, целеустремленный опыт решения проблем, связанных с деньгами и валютами . | 354 | Победить! |
Михаэль Эрнст | Аннотации к типам Java | Рассудительный подход; отличный пример хорошо организованной JSR. | 308 | ||
Найджел Дикин, | Служба сообщений Java 2.0 | Выдающаяся, тщательная и интеллектуальная работа, позволяющая JMS 2 EG оставаться открытым и двигаться вперед в высоком темпе. | 343 | ||
Пит Мьюир, | Контексты и внедрение зависимостей для Java EE 1.1 | Добровольное обновление до версии 2.8 в конце 2011 года и сохранение уже существующих прозрачных методов управления своей Экспертной группой. | 346 | ||
Наиболее значимый JSR | Джитендра Котамраджу | API для обработки JSON | Важный шаг на пути внедрения Java в мир современного Интернета. | 353 | |
Виктор Граци, | API денег и валюты | Новые способы обработки денежных сумм и валютных расчетов. Исправление критических ошибок формата и представления чисел Java, выходящих за рамки денежных значений. | 354 | ||
Митч Аптон | Управление состоянием Java | Потенциал улучшения того, как будут выглядеть серверы приложений и распределенные сервисы в ближайшем будущем, а также упрощение развертывания в средах PaaS и облачных средах. | 350 | ||
Найджел Дикин | Служба сообщений Java 2 | Модернизация JMS быстрыми темпами. | 343 | ||
Патрик Карран | JCP.Далее | Определение направления и процедур для JCP следующего поколения. | 348 355 358 | Победить! |