Java Community Process (JCP) — сформированный в 1998 году формальный процесс, который позволяет заинтересованным лицам участвовать в формировании будущих версий спецификаций платформ языка Java.
Основа JCP — так называемые JSR (Java Specification Request/Запрос на Спецификацию Java), формальные документы, описывающие спецификации и технологии, которые предлагается добавить к Java платформе.
Разработка JSR включает следующие шаги: Запрос (Initiation). Спецификация предлагается членами сообщества, и, путём голосования, принимается Исполнительным Комитетом (JCP Executive Committee). В это время JSR присваивается номер. Черновик для сообщества (Community Draft). После принятия JSR формируется экспертная группа, которая разрабатывает первый черновик спецификации. Этот черновик выносится на рассмотрение Исполнительного Комитета и членов сообщества. По итогам обсуждения выносится решение о том, переходить к следующей стадии, или необходим новый доработанный Community Draft. Открытый черновик (Public Draft). Черновик, дошедший до этой стадии, выкладывается в свободный доступ, и любой человек, имеющий доступ к сети Интернет, может рассмотреть его и высказать свое мнение. Экспертная группа использует эти отзывы для дальнейшего совершенствования спецификации. После этого доработанная спецификация выносится на голосование Исполнительного Комитета для окончательного утверждения. К этому времени становятся доступными Эталонная реализация (reference implementation) и набор автоматических тестов Technology Compatibility Kit (TCK). Поддержка (Maintenance). Окончательная версия спецификации, эталонной реализации и TCK обновляется по мере поступления запросов на доработку, уточнение и расширение. Некоторые запросы могут потребовать пересмотра спецификации экспертной группой и выпуска новой версии, или даже формирования нового JSR.
В соответствии с основными целевыми направлениями, существуют два Исполнительных комитета: ME — комитет по платформам с ограниченными возможностями (прежде всего мобильных). Основная платформа — J2ME. По состоянию на июнь 2008 года, в ведении этого комитета находится 79 JSR’ов. SE/EE — занимается платформами для настольных компьютеров (Java Platform, Standard Edition) и для серверов (Java Platform, Enterprise Edition). Под действие этого комитета попадает 223 JSR’а (на июнь 2008).