2 * Copyright 2000-2016 JetBrains s.r.o.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
22 package org.jetbrains.intellij.build
24 import groovy.transform.CompileStatic
25 import org.jetbrains.intellij.build.impl.PluginLayout
27 import static org.jetbrains.intellij.build.impl.PluginLayout.plugin
33 class CommunityRepositoryModules {
34 static List<String> PLATFORM_API_MODULES = [
36 "built-in-server-api",
41 "external-system-api",
48 "remote-servers-agent-rt",
59 "xml-structure-view-api"
62 static List<String> PLATFORM_IMPLEMENTATION_MODULES = [
73 "jps-model-serialization",
79 "protocol-reader-runtime",
82 "remote-servers-impl",
83 "script-debugger-backend",
87 "structure-view-impl",
95 "xml-structure-view-impl",
97 "configuration-store-impl",
101 * Specifies layout for all plugins which sources are located in 'community' and 'contrib' repositories
103 static List<PluginLayout> COMMUNITY_REPOSITORY_PLUGINS = [
109 mainJarName = "antIntegration.jar"
110 withModule("ant-jps-plugin")
112 plugin("ui-designer") {
113 directoryName = "uiDesigner"
114 mainJarName = "uiDesigner.jar"
115 withJpsModule("ui-designer-jps-plugin")
117 plugin("properties") {
118 withModule("properties-psi-api", "properties.jar")
119 withModule("properties-psi-impl", "properties.jar")
122 withModule("git4idea-rt", "git4idea-rt.jar", false)
123 withOptionalModule("remote-servers-git")
124 withOptionalModule("remote-servers-git-java", "remote-servers-git.jar")
127 withResource("lib/licenses", "lib/licenses")
129 plugin("cvs-plugin") {
130 directoryName = "cvsIntegration"
131 mainJarName = "cvsIntegration.jar"
132 withModule("javacvs-src")
133 withModule("smartcvs-src")
134 withModule("cvs-core", "cvs_util.jar")
137 withModule("xslt-rt", "rt/xslt-rt.jar")
139 plugin("IntelliLang") {
140 withOptionalModule("IntelliLang-java", "IntelliLang.jar")
141 withOptionalModule("IntelliLang-xml", "IntelliLang.jar")
142 withOptionalModule("intellilang-jps-plugin", "intellilang-jps-plugin.jar")
143 doNotCreateSeparateJarForLocalizableResources()
145 plugin("tasks-core") {
146 directoryName = "tasks"
147 withModule("tasks-api")
149 withOptionalModule("tasks-java")
150 doNotCreateSeparateJarForLocalizableResources()
153 withResource("lib/jediterm-sh.in", "lib")
155 plugin("editorconfig"),
158 plugin("xslt-debugger") {
159 withModule("xslt-debugger-engine")
160 withModule("xslt-debugger-engine-impl", "rt/xslt-debugger-engine-impl.jar")
161 withModuleLibrary("Saxon-6.5.5", "xslt-debugger-engine-impl", "rt")
162 withModuleLibrary("Saxon-9HE", "xslt-debugger-engine-impl", "rt")
163 withModuleLibrary("Xalan-2.7.1", "xslt-debugger-engine-impl", "rt")
164 //todo[nik] unmark 'lib' directory as source root instead
165 excludeFromModule("xslt-debugger-engine-impl", "rmi-stubs.jar")
166 excludeFromModule("xslt-debugger-engine-impl", "saxon.jar")
167 excludeFromModule("xslt-debugger-engine-impl", "saxon9he.jar")
168 excludeFromModule("xslt-debugger-engine-impl", "serializer.jar")
169 excludeFromModule("xslt-debugger-engine-impl", "xalan.jar")
171 plugin("settings-repository"),
174 plugin("student-python") {
175 withResource("resources/courses", "lib/courses")
176 excludeFromModule("student-python", "courses")
178 plugin("course-creator"),
179 plugin("course-creator-python"),
181 plugin("IntelliLang-python"),
182 plugin("python-rest")