diff --git a/.idea/modules.xml b/.idea/modules.xml
index d943f90d0368..272cdd91cc4f 100644
--- a/.idea/modules.xml
+++ b/.idea/modules.xml
@@ -33,6 +33,7 @@
+
diff --git a/build/scripts/layouts.gant b/build/scripts/layouts.gant
index bd715094ffba..3ec5b69db1f0 100644
--- a/build/scripts/layouts.gant
+++ b/build/scripts/layouts.gant
@@ -199,7 +199,7 @@ def layoutFull(String home, String targetDirectory, String patchedDescriptorDir
public def layoutCommunityPlugins(String home) {
dir("plugins") {
- def simplePlugins = ["commander", "copyright", "properties", "java-i18n", "devkit", "eclipse", "hg4idea", "github", "ui-designer-new"]
+ def simplePlugins = ["commander", "copyright", "properties", "java-i18n", "eclipse", "hg4idea", "github", "ui-designer-new"]
simplePlugins.each {
layoutPlugin it
@@ -358,6 +358,14 @@ public def layoutCommunityPlugins(String home) {
}
}
+ layoutPlugin("devkit") {
+ dir("jps") {
+ jar("devkit-jps-plugin.jar") {
+ module("devkit-jps-plugin")
+ }
+ }
+ }
+
layoutPlugin("android") {
fileset(dir: "${home}/plugins/android/lib") {
include(name: "**/*.jar")
diff --git a/jps/model/src/org/jetbrains/jps/JavaSdk.groovy b/jps/model/src/org/jetbrains/jps/JavaSdk.groovy
index d7496afcdac0..3d23c526a4c5 100644
--- a/jps/model/src/org/jetbrains/jps/JavaSdk.groovy
+++ b/jps/model/src/org/jetbrains/jps/JavaSdk.groovy
@@ -6,12 +6,8 @@ import org.jetbrains.annotations.Nullable
* @author Eugene.Kudelevsky
*/
public abstract class JavaSdk extends Sdk {
- def JavaSdk(Project project, String name, String jdkPath, Closure initializer) {
- super(project, name, initializer)
- }
-
- JavaSdk(project, name, initializer) {
- super(project, name, initializer)
+ JavaSdk(project, name) {
+ super(project, name)
}
@Nullable
diff --git a/jps/model/src/org/jetbrains/jps/JavaSdkImpl.groovy b/jps/model/src/org/jetbrains/jps/JavaSdkImpl.groovy
index f6a37f44a8f5..c7da84dff480 100644
--- a/jps/model/src/org/jetbrains/jps/JavaSdkImpl.groovy
+++ b/jps/model/src/org/jetbrains/jps/JavaSdkImpl.groovy
@@ -9,8 +9,8 @@ class JavaSdkImpl extends JavaSdk {
String jdkPath
@Nullable String version
- def JavaSdkImpl(Project project, String name, String version, String jdkPath, Closure initializer) {
- super(project, name, initializer)
+ def JavaSdkImpl(Project project, String name, String version, String jdkPath) {
+ super(project, name)
this.version = version
this.jdkPath = jdkPath
}
diff --git a/jps/model/src/org/jetbrains/jps/Sdk.groovy b/jps/model/src/org/jetbrains/jps/Sdk.groovy
index bb41343ad91d..2634327f7050 100644
--- a/jps/model/src/org/jetbrains/jps/Sdk.groovy
+++ b/jps/model/src/org/jetbrains/jps/Sdk.groovy
@@ -4,7 +4,7 @@ package org.jetbrains.jps
* @author nik
*/
class Sdk extends Library {
- Sdk(project, name, initializer) {
+ Sdk(project, name) {
super(project, name);
}
}
diff --git a/jps/model/src/org/jetbrains/jps/idea/JavaSdkType.groovy b/jps/model/src/org/jetbrains/jps/idea/JavaSdkType.groovy
index 891f1dd54272..b83b79845aa3 100644
--- a/jps/model/src/org/jetbrains/jps/idea/JavaSdkType.groovy
+++ b/jps/model/src/org/jetbrains/jps/idea/JavaSdkType.groovy
@@ -14,6 +14,6 @@ class JavaSdkType extends SdkTypeService {
@Override
Sdk createSdk(Project project, String name, String version, String homePath, Node additionalData) {
- return new JavaSdkImpl(project, name, version, homePath, {})
+ return new JavaSdkImpl(project, name, version, homePath)
}
}
diff --git a/plugins/android/jps-plugin/src/org/jetbrains/jps/android/AndroidSdk.groovy b/plugins/android/jps-plugin/src/org/jetbrains/jps/android/AndroidSdk.groovy
index 6e805e0e06bc..3c159230492e 100644
--- a/plugins/android/jps-plugin/src/org/jetbrains/jps/android/AndroidSdk.groovy
+++ b/plugins/android/jps-plugin/src/org/jetbrains/jps/android/AndroidSdk.groovy
@@ -13,7 +13,7 @@ class AndroidSdk extends JavaSdk {
final String javaSdkName;
AndroidSdk(Project project, String name, String sdkPath, String javaSdkName, String buildTargetHashString) {
- super(project, name, '', {})
+ super(project, name)
this.sdkPath = sdkPath
this.buildTargetHashString = buildTargetHashString
this.javaSdkName = javaSdkName;
diff --git a/plugins/devkit/jps-plugin/devkit-jps-plugin.iml b/plugins/devkit/jps-plugin/devkit-jps-plugin.iml
new file mode 100644
index 000000000000..d862612d0783
--- /dev/null
+++ b/plugins/devkit/jps-plugin/devkit-jps-plugin.iml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/plugins/devkit/jps-plugin/src/META-INF/services/org.jetbrains.jps.idea.SdkTypeService b/plugins/devkit/jps-plugin/src/META-INF/services/org.jetbrains.jps.idea.SdkTypeService
new file mode 100644
index 000000000000..91e70aae6fe8
--- /dev/null
+++ b/plugins/devkit/jps-plugin/src/META-INF/services/org.jetbrains.jps.idea.SdkTypeService
@@ -0,0 +1 @@
+org.jetbrains.idea.devkit.jps.IdeaSdkType
\ No newline at end of file
diff --git a/plugins/devkit/jps-plugin/src/org/jetbrains/idea/devkit/jps/IdeaSdkType.java b/plugins/devkit/jps-plugin/src/org/jetbrains/idea/devkit/jps/IdeaSdkType.java
new file mode 100644
index 000000000000..93ffad404087
--- /dev/null
+++ b/plugins/devkit/jps-plugin/src/org/jetbrains/idea/devkit/jps/IdeaSdkType.java
@@ -0,0 +1,35 @@
+package org.jetbrains.idea.devkit.jps;/*
+ * Copyright 2000-2012 JetBrains s.r.o.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import groovy.util.Node;
+import org.jetbrains.jps.JavaSdkImpl;
+import org.jetbrains.jps.Project;
+import org.jetbrains.jps.Sdk;
+import org.jetbrains.jps.idea.SdkTypeService;
+
+/**
+ * @author nik
+ */
+public class IdeaSdkType extends SdkTypeService {
+ public IdeaSdkType() {
+ super("IDEA JDK");
+ }
+
+ @Override
+ public Sdk createSdk(Project project, String name, String version, String homePath, Node additionalData) {
+ return new JavaSdkImpl(project, name, version, homePath);
+ }
+}
diff --git a/plugins/devkit/resources/META-INF/plugin.xml b/plugins/devkit/resources/META-INF/plugin.xml
index aa5791180304..41ca6740d7a8 100644
--- a/plugins/devkit/resources/META-INF/plugin.xml
+++ b/plugins/devkit/resources/META-INF/plugin.xml
@@ -31,6 +31,7 @@
+