-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.gradle
98 lines (77 loc) · 2.45 KB
/
build.gradle
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
import groovy.json.JsonSlurper
plugins {
id "java"
id "idea"
}
repositories {
mavenCentral()
maven { url "https://repo.gradle.org/gradle/libs-releases" }
flatDir { dirs mcreator_path + "/lib" }
}
group = 'net.mcreator.vcs'
version = new JsonSlurper().parse(file('src/main/resources/plugin.json'))['info']['version']
java.toolchain.languageVersion = JavaLanguageVersion.of(21)
idea {
module {
inheritOutputDirs = true
// define exclude dirs
excludeDirs += file(".github")
excludeDirs += file(".gradle")
excludeDirs += file(".idea")
excludeDirs += file("build")
excludeDirs += file("gradle")
excludeDirs += file("jdk")
excludeDirs += file("license")
excludeDirs += file("logs")
}
}
configurations {
implementation.extendsFrom export
}
dependencies {
implementation project(':MCreator')
project(':MCreator').afterEvaluate(() -> project(':MCreator').configurations.implementation.dependencies.each {
//noinspection ForeignDelegate
implementation it
})
export 'org.openl.jgit:org.eclipse.jgit:6.9.0.202403050737-openl'
}
tasks.jar {
archiveFileName.set('mcreator-vcs-' + project.version + '.zip')
from {
configurations.export.collect { it.isDirectory() ? it : zipTree(it) }
}
}
tasks.register("extractPlugin", Copy.class) {
doFirst {
delete 'build/export/'
mkdir 'build/export/'
}
dependsOn jar
into 'build/export'
into('') {
from zipTree(file('build/libs/mcreator-vcs-' + project.version + '.zip'))
from 'LICENSE.txt'
}
into('license') { from 'license' }
}
tasks.register('exportPlugin', Zip) {
dependsOn extractPlugin
delete 'build/libs/'
from 'build/export/'
into ''
destinationDirectory = file('build/libs/')
archiveFileName = 'mcreator-vcs-' + project.version + '.zip'
doLast {
delete 'build/export/'
}
}
tasks.register('runMCreatorWithPlugin', JavaExec) {
dependsOn jar
environment("MCREATOR_PLUGINS_FOLDER", file("./build/libs"))
environment("MCREATOR_PLUGINS_DEV", "")
jvmArgs '--add-opens', 'java.base/java.lang=ALL-UNNAMED'
classpath = project(':MCreator').sourceSets.main.runtimeClasspath + sourceSets.main.runtimeClasspath
mainClass.set('net.mcreator.Launcher')
workingDir = mcreator_path
}