-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle
131 lines (112 loc) · 4.54 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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
buildscript {
repositories {
jcenter()
mavenCentral()
maven {
name = "forge"
url = "http://files.minecraftforge.net/maven"
}
maven {
name = "sonatype"
url = "https://oss.sonatype.org/content/repositories/snapshots/"
}
}
dependencies {
classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.8.1' // 1.8.4 не юзается, т.к. он не работает нифига
}
}
apply plugin: 'forge'
version = "0.3.13alpha"
group= "ru.rarescrap.tabinventory" // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = "minecraft-tab-inventory-lib"
def publicationVersion = version+'_1.7.10'
minecraft {
version = "1.7.10-10.13.4.1558-1.7.10"
runDir = "eclipse"
}
dependencies {
// you may put jars on which you depend on in ./libs
// or you may define them like so..
//compile "some.group:artifact:version:classifier"
//compile "some.group:artifact:version"
// real examples
//compile 'com.mod-buildcraft:buildcraft:6.0.8:dev' // adds buildcraft to the dev env
//compile 'com.googlecode.efficient-java-matrix-library:ejml:0.24' // adds ejml to the dev env
// for more info...
// http://www.gradle.org/docs/current/userguide/artifact_dependencies_tutorial.html
// http://www.gradle.org/docs/current/userguide/dependency_management.html
}
processResources {
// this will ensure that this task is redone when the versions change.
inputs.property "version", project.version
inputs.property "mcversion", project.minecraft.version
// replace stuff in mcmod.info, nothing else
from(sourceSets.main.resources.srcDirs) {
include 'mcmod.info'
// replace version and mcversion
expand 'version':project.version, 'mcversion':project.minecraft.version
}
// copy everything else, thats not the mcmod.info
from(sourceSets.main.resources.srcDirs) {
exclude 'mcmod.info'
}
}
// Формирует jar'ник только для api-модуля
task apiJar(type: Jar) {
from sourceSets.api.output
//classifier = 'api' // Нам не нужно классифицировать его, т.к. в данном случае apiJar является артефактом по умолчанию
}
javadoc {
options.encoding = 'UTF-8' // Поддержка руских букв в доках
}
task javadocJar(type: Jar, dependsOn: javadoc) {
classifier = 'javadoc'
from javadoc.destinationDir
}
task sourcesJar(type: Jar, dependsOn: classes) {
classifier = 'sources'
from sourceSets.api.allSource
}
// Подготавливает maven-публикацию, которая будет использоваться в bintray
// Именно тут определяются артефакты для публикации
apply plugin: 'maven-publish'
publishing {
publications {
BintrayPublication(MavenPublication) {
//from components.java // Артефакты по умолчанию. Отлючаем их, т.к. нам нужно артефакт main-модуля заменить на артефакт от api-модуля
groupId group
artifactId archivesBaseName
version publicationVersion
artifact apiJar
artifact sourcesJar
artifact javadocJar
}
}
}
// Публикация либы в bintray/jcenter
apply plugin: 'com.jfrog.bintray'
bintray {
user = 'rarescrap'
key = System.getenv('BINTRAY_KEY')
publications = ['BintrayPublication']
pkg {
repo = 'minecraft'
name = 'minecraft-tab-inventory'
licenses = ['GPL-3.0']
vcsUrl = 'https://github.com/RareScrap/MinecraftTabInventory.git'
version {
name = publicationVersion
released = new Date()
}
}
}
// Это помогает исправить баг с обнаружением текстур при работе в intellij
// Баг проявляется только есть запустить игру через Minecraft Client - встроенную опцию
// Не требуется в NetBeans
idea { module { inheritOutputDirs = true } }
// Устраняет ошибки и предупреждения компиляции из-за русских комментов
compileJava.options.encoding = 'UTF-8'
tasks.withType(JavaCompile) {
options.encoding = 'UTF-8'
}