aboutsummaryrefslogtreecommitdiff
path: root/strippedIdeaJar/build.gradle
diff options
context:
space:
mode:
Diffstat (limited to 'strippedIdeaJar/build.gradle')
-rw-r--r--strippedIdeaJar/build.gradle52
1 files changed, 52 insertions, 0 deletions
diff --git a/strippedIdeaJar/build.gradle b/strippedIdeaJar/build.gradle
new file mode 100644
index 00000000..e8104d00
--- /dev/null
+++ b/strippedIdeaJar/build.gradle
@@ -0,0 +1,52 @@
+import proguard.gradle.ProGuardTask
+
+buildscript {
+ dependencies {
+ classpath "org.jetbrains.intellij.plugins:gradle-intellij-plugin:$gradle_intellij_plugin_version"
+ classpath "net.sf.proguard:proguard-gradle:5.3.3"
+ }
+}
+
+apply plugin: 'org.jetbrains.intellij'
+
+{ ->
+ intellij {
+ version = ideaVersion
+ instrumentCode = false
+ configureDefaultDependencies = false
+ }
+
+ ["patchPluginXml", "prepareSandbox", "prepareTestingSandbox",
+ "verifyPlugin", "runIde", "buildPlugin", "publishPlugin"].each {
+ tasks.remove(tasks.findByName(it))
+ }
+}()
+
+configurations {
+ proguardInput
+ proguardOut
+}
+
+afterEvaluate {
+ dependencies {
+ proguardInput intellij { include("idea.jar") }
+ }
+}
+
+
+task strip(type: ProGuardTask) {
+ configuration file('ideaJar.pro')
+ afterEvaluate {
+ injars configurations.proguardInput.files, filter: "**.class"
+ outjars file("$buildDir/idea-stripped.jar")
+ }
+}
+
+
+afterEvaluate {
+ artifacts {
+ proguardOut(strip.outputs.files.singleFile) {
+ builtBy strip
+ }
+ }
+} \ No newline at end of file