forked from cfmlprojects/runwar
-
Notifications
You must be signed in to change notification settings - Fork 4
/
dependencies.gradle
158 lines (133 loc) · 5.78 KB
/
dependencies.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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
buildscript {
repositories { maven { url "https://plugins.gradle.org/m2/" } }
dependencies { classpath "com.github.jengelman.gradle.plugins:shadow:5.2.0" }
}
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
configurations {
dorkboxDependency
jbossJspDependency
}
ext {
undertowVersion = '2.2.37.Final'
urlRewriteVersion = '5.0.2-SNAPSHOT'
proguardVersion = '6.0.2'
systemTrayVersion = '3.17'
//systemTrayVersion = '4.2'
// TODO: There is a 2.x version we need to test
jbossJspApiVersion = '1.0.3'
mavenRepo = "${System.getProperty("user.home")}/cfdistro/artifacts/"
}
repositories {
mavenLocal()
maven { url "https://repo.maven.apache.org/maven2" }
maven { url "http://repository.jboss.org/nexus/content/repositories/releases" }
maven { url "http://downloads.ortussolutions.com/" }
}
task dorkboxUberJar(type: ShadowJar) {
description = 'java 9+ has problems with the same packages in different jars'
classifier = null
baseName = 'dorkbox'
mergeServiceFiles()
version = systemTrayVersion
configurations = [project.configurations.dorkboxDependency]
}
task jbossJspJar(type: ShadowJar) {
description = 'java 9+ error about version numbers or something'
classifier = null
baseName = "jboss-jsp-api"
version = jbossJspApiVersion
mergeServiceFiles()
configurations = [project.configurations.jbossJspDependency]
}
dependencies {
// undertow
compile group: 'io.undertow', name: 'undertow-websockets-jsr', version: project.undertowVersion
compile group: 'org.jboss.spec.javax.servlet.jsp', name: 'jboss-jsp-api_2.3_spec', version: '2.0.1.Final'
// TODO: There is a 2.x version to test
compile("org.jboss.spec.javax.el:jboss-el-api_3.0_spec:1.0.13.Final")
compile("io.undertow:undertow-servlet:${project.undertowVersion}") {
exclude group: 'org.jboss.spec.javax.annotation', module: 'jboss-annotations-api_1.2_spec'
}
// squish the dorkbox stuff together for java 9+
dorkboxDependency("com.dorkbox:Notify:3.7")
dorkboxDependency("com.dorkbox:SystemTray:${systemTrayVersion}") {
exclude group: 'ch.qos.logback', module: 'logback-core'
exclude group: 'ch.qos.logback', module: 'logback-classic'
}
compile(files(dorkboxUberJar.archivePath){ builtBy dorkboxUberJar })
// configuration
compile group: 'net.minidev', name: 'json-smart-mini', version: '1.3.2'
// This is used in the WebXMLParser class for XML stuffs
compile group: 'org.jooq', name: 'joox-java-6', version: '1.6.2'
// logging
// Older libs require the older version of slf4j. Specifically test with "server cd" command which sends the following warnings to the console
/* SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details. */
compile("org.apache.logging.log4j:log4j-slf4j-impl:2.22.1")
// This is the newer version which is required for SystemTray's logging to work.
compile("org.apache.logging.log4j:log4j-slf4j2-impl:2.22.1")
compile("org.apache.logging.log4j:log4j-core:2.22.1")
compile("org.apache.logging.log4j:log4j-layout-template-json:2.22.1")
// TODO: DO NOT UPGRADE PAST 3.4.0 UNTIL JAVA 8 SUPPORT IS DROPPED
compile("org.jboss.logging:jboss-logging:3.4.0.Final")
compile("org.jboss.logging:jboss-logging-annotations:2.2.1.Final")
// forked version of tuckey for now
//compile("org.cfmlprojects:urlrewritefilter:${project.urlRewriteVersion}") ///missing version of forked project
// https://mvnrepository.com/artifact/org.tuckey/urlrewritefilter
//compile group: 'org.tuckey', name: 'urlrewritefilter', version: '4.0.3'
compile("cfmlprojects:urlrewritefilter:${project.urlRewriteVersion}")
// regexpathinfofilter lets us handle *.cfm/* paths
compile("org.cfmlprojects:regexpathinfofilter:1.0.3")
// TODO: Test new 5.x version. Used by SystemTray, I think
compile("net.java.dev.jna:jna:4.5.2")
compile("net.java.dev.jna:jna-platform:4.5.2")
// ssl
compile("org.bouncycastle:bcpkix-jdk15on:1.70")
// ansi colors for logging system output
compile("com.jcabi:jcabi-log:0.24.1") { transitive = false }
// tests
testCompile("org.apache.httpcomponents:httpclient:4.5.12")
testCompile("org.apache.httpcomponents:httpmime:4.5.12")
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.2.0'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.2.0'
testCompile group: 'org.junit.platform', name: 'junit-platform-launcher', version: "1.2.0"
testCompile('org.junit.jupiter:junit-jupiter-params:5.2.0')
}
processResources.dependsOn(dorkboxUberJar)
processResources.dependsOn(jbossJspJar)
gradle.buildFinished {
if(project.gradle.startParameter.taskNames.findAll{it.contains("ublish")}){
def repoDir = "${mavenRepo}${project.group.replace('.','/')}/dorkbox/${systemTrayVersion}"
file(repoDir).listFiles().each{
println it
}
repoDir = "${mavenRepo}${project.group.replace('.','/')}/jboss-jsp-api/${jbossJspApiVersion}"
file(repoDir).listFiles().each{
println it
}
}
}
apply plugin: 'maven-publish'
publishing {
repositories {
maven {
name 'cfdistro'
url project.mavenRepo
}
}
publications {
dorkbox(MavenPublication) {
groupId project.group
artifactId 'dorkbox'
version = systemTrayVersion
artifact dorkboxUberJar
}
jbossJsp(MavenPublication) {
groupId project.group
artifactId 'jboss-jsp-api'
version = jbossJspApiVersion
artifact jbossJspJar
}
}
}