|
@@ -25,6 +25,35 @@ ext {
|
|
|
|
|
|
}
|
|
|
|
|
|
+def libjarsmapper=[
|
|
|
+ 'maxkey-authentication-otp' :'lib',
|
|
|
+ 'maxkey-authentication-captcha' :'lib',
|
|
|
+ 'maxkey-authentication-core' :'lib',
|
|
|
+ 'maxkey-common' :'lib',
|
|
|
+ 'maxkey-core' :'lib',
|
|
|
+ 'maxkey-persistence' :'lib',
|
|
|
+ 'maxkey-protocol-authorize' :'lib',
|
|
|
+ 'maxkey-protocol-cas' :'lib',
|
|
|
+ 'maxkey-protocol-desktop' :'lib',
|
|
|
+ 'maxkey-protocol-extendapi' :'lib',
|
|
|
+ 'maxkey-protocol-formbased' :'lib',
|
|
|
+ 'maxkey-protocol-jwt' :'lib',
|
|
|
+ 'maxkey-protocol-oauth-2.0' :'lib',
|
|
|
+ 'maxkey-protocol-saml-2.0' :'lib',
|
|
|
+ 'maxkey-protocol-tokenbased' :'lib',
|
|
|
+ 'maxkey-web-resources' :'lib',
|
|
|
+ 'maxkey-authentication-social' :'maxkey',
|
|
|
+ 'maxkey-web-maxkey' :'maxkey',
|
|
|
+ 'maxkey-identity-rest' :'maxkey_mgt',
|
|
|
+ 'maxkey-identity-scim' :'maxkey_mgt',
|
|
|
+ 'maxkey-web-mgt' :'maxkey_mgt',
|
|
|
+ 'maxkey-synchronizers' :'maxkey_mgt',
|
|
|
+ 'maxkey-synchronizers-activedirectory' :'maxkey_mgt',
|
|
|
+ 'maxkey-synchronizers-ldap' :'maxkey_mgt',
|
|
|
+ 'maxkey-synchronizers-dingding' :'maxkey_mgt',
|
|
|
+ 'maxkey-synchronizers-workweixin' :'maxkey_mgt',
|
|
|
+ 'maxkey-boot-monitor' :'maxkey_monitor'
|
|
|
+]
|
|
|
|
|
|
configurations.all {
|
|
|
transitive = false// 为本依赖关闭依赖传递特性
|
|
@@ -124,7 +153,7 @@ subprojects {
|
|
|
maven { url "https://repository.apache.org/content/repositories/releases/" }
|
|
|
mavenCentral()
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
//all dependencies
|
|
|
dependencies {
|
|
|
|
|
@@ -423,19 +452,25 @@ subprojects {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- tasks.register("buildRelease",Copy) {
|
|
|
- dependsOn assemble
|
|
|
- //项目名 项目所在的group version 版本号
|
|
|
- println "subproject " + project.name + ", group " + project.group +" , version " + project.version
|
|
|
-
|
|
|
- //copy
|
|
|
- into "$rootDir/build/maxkey-jars/"
|
|
|
- from "$buildDir/libs/"
|
|
|
- include '*.jar'
|
|
|
-
|
|
|
+ tasks.register("buildRelease",Copy) {
|
|
|
+ dependsOn assemble
|
|
|
+ //项目名 项目所在的group version 版本号
|
|
|
+ println "subproject " + project.name + ", group " + project.group +" , version " + project.version
|
|
|
+
|
|
|
+ //copy
|
|
|
+ into "$rootDir/build/maxkey-jars/"
|
|
|
+ from "$buildDir/libs/"
|
|
|
+ include '*.jar'
|
|
|
}
|
|
|
-
|
|
|
- assemble.configure { finalizedBy buildRelease }
|
|
|
+
|
|
|
+ tasks.register("copyLibJars",Copy) {
|
|
|
+ if (libjarsmapper["${project.name}"] != null){
|
|
|
+ into "$rootDir/build/MaxKey-v${project.version}GA/"+libjarsmapper["${project.name}"]
|
|
|
+ from "$buildDir/libs/"
|
|
|
+ include '*.jar'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ assemble.configure { finalizedBy buildRelease,copyLibJars }
|
|
|
}
|
|
|
|
|
|
//copy Dep Jars to /build/maxkey-depjars,only maxkey-common deps
|
|
@@ -444,9 +479,9 @@ project('maxkey-common') {
|
|
|
def paths = ["$rootDir/build/MaxKey-v${project.version}GA",
|
|
|
"$rootDir/build/MaxKey-v${project.version}GA/maxkey",
|
|
|
"$rootDir/build/MaxKey-v${project.version}GA/maxkey_mgt",
|
|
|
+ "$rootDir/build/MaxKey-v${project.version}GA/maxkey_monitor",
|
|
|
"$rootDir/build/MaxKey-v${project.version}GA/lib"];
|
|
|
//遍历数组,调用createDir闭包,创建目录
|
|
|
-
|
|
|
paths.forEach(){path->
|
|
|
File dir=new File(path);
|
|
|
if (!dir.exists()){
|
|
@@ -455,107 +490,35 @@ project('maxkey-common') {
|
|
|
}
|
|
|
};
|
|
|
}
|
|
|
-
|
|
|
- task copyDepJars (type: Copy){
|
|
|
- dependsOn assemble
|
|
|
- println "copy Dep Jars to $rootDir/build/MaxKey-v${project.version}GA/lib"
|
|
|
-
|
|
|
- from configurations.runtimeClasspath
|
|
|
- into "$rootDir/build/MaxKey-v${project.version}GA/lib";
|
|
|
- }
|
|
|
-
|
|
|
- build.configure { finalizedBy copyDepJars }
|
|
|
+
|
|
|
+ task copyDepJars (type: Copy){
|
|
|
+ dependsOn assemble
|
|
|
+ println "copy Dep Jars to $rootDir/build/MaxKey-v${project.version}GA/lib"
|
|
|
+ //copy runtime
|
|
|
+ from configurations.runtimeClasspath
|
|
|
+ into "$rootDir/build/MaxKey-v${project.version}GA/lib";
|
|
|
+ }
|
|
|
+
|
|
|
+ build.configure { finalizedBy copyDepJars }
|
|
|
}
|
|
|
|
|
|
//copy Dep Jars to /build/maxkey-depjars,only maxkey-boot-monitor deps
|
|
|
project('maxkey-webs:maxkey-boot-monitor') {
|
|
|
- task createReleaseDir(type: Copy){
|
|
|
- def paths = ["$rootDir/build/MaxKey-v${project.version}GA/maxkey_monitor"];
|
|
|
- //遍历数组,调用createDir闭包,创建目录
|
|
|
-
|
|
|
- paths.forEach(){path->
|
|
|
- File dir=new File(path);
|
|
|
- if (!dir.exists()){
|
|
|
- print("create "+path+"\n")
|
|
|
- dir.mkdirs();
|
|
|
- }
|
|
|
- };
|
|
|
+ task copyDepJars(type:Copy) {
|
|
|
+ dependsOn assemble
|
|
|
+ //项目名 项目所在的group version 版本号
|
|
|
+ println "subproject " + project.name + ", group " + project.group +" , version " + project.version
|
|
|
+ //copy runtime
|
|
|
+ from configurations.runtimeClasspath
|
|
|
+ into "$rootDir/build/MaxKey-v${project.version}GA/maxkey_monitor";
|
|
|
}
|
|
|
-
|
|
|
- task copyDepJars(type:Copy) {
|
|
|
- dependsOn assemble
|
|
|
- //项目名 项目所在的group version 版本号
|
|
|
- println "subproject " + project.name + ", group " + project.group +" , version " + project.version
|
|
|
- //copy
|
|
|
- from "$buildDir/libs/" include '*.jar'
|
|
|
- from configurations.runtimeClasspath
|
|
|
- into "$rootDir/build/MaxKey-v${project.version}GA/maxkey_monitor";
|
|
|
- }
|
|
|
-
|
|
|
- build.configure { finalizedBy copyDepJars }
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
-project('maxkey-webs:maxkey-web-maxkey') {
|
|
|
-
|
|
|
- task copyDepJars (type: Copy){
|
|
|
- println "project copyMaxKey .";
|
|
|
-
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-authentication-social-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-web-maxkey-${project.version}.jar"
|
|
|
- into "$rootDir/build/MaxKey-v${project.version}GA/maxkey/";
|
|
|
- }
|
|
|
-
|
|
|
- //common lib jars
|
|
|
- task copyMaxKeyLibs(type: Copy) {
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-authentication-otp-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-authentication-captcha-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-authentication-core-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-common-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-core-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-persistence-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-protocol-authorize-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-protocol-cas-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-protocol-desktop-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-protocol-extendapi-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-protocol-formbased-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-protocol-jwt-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-protocol-oauth-2.0-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-protocol-saml-2.0-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-protocol-tokenbased-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-web-resources-${project.version}.jar"
|
|
|
- into "$rootDir/build/MaxKey-v${project.version}GA/lib";
|
|
|
- }
|
|
|
-
|
|
|
- build.configure { finalizedBy copyDepJars }
|
|
|
-
|
|
|
- copyDepJars.configure { finalizedBy copyMaxKeyLibs }
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-project('maxkey-webs:maxkey-web-mgt') {
|
|
|
-
|
|
|
- task copyDepJars (type: Copy){
|
|
|
- println "project copyMaxKeyMgt .";
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-identity-rest-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-identity-scim-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-web-mgt-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-synchronizers-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-synchronizers-activedirectory-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-synchronizers-ldap-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-synchronizers-dingding-${project.version}.jar"
|
|
|
- from "$rootDir/build/maxkey-jars/maxkey-synchronizers-workweixin-${project.version}.jar"
|
|
|
- into "$rootDir/build/MaxKey-v${project.version}GA/maxkey_mgt/";
|
|
|
- }
|
|
|
-
|
|
|
- build.configure { finalizedBy copyDepJars }
|
|
|
+
|
|
|
+ build.configure { finalizedBy copyDepJars }
|
|
|
}
|
|
|
|
|
|
-
|
|
|
tasks.register("buildRelease") {
|
|
|
- dependsOn 'copyShellScript','copyWindowsShellScript'
|
|
|
-
|
|
|
+ dependsOn 'copyShellScript','copyWindowsShellScript'
|
|
|
+
|
|
|
//项目名 项目所在的group version 版本号
|
|
|
println "Root project " + project.name + ", group " + project.group +" , version " + project.version
|
|
|
//项目的绝对路径 to 项目的build文件绝对路径
|
|
@@ -563,17 +526,16 @@ tasks.register("buildRelease") {
|
|
|
}
|
|
|
|
|
|
tasks.register("copyShellScript",Copy) {
|
|
|
- println "project copyMaxKeyShellScript .";
|
|
|
-
|
|
|
- from "$rootDir/shellscript/"
|
|
|
- into "$rootDir/build/MaxKey-v${project.version}GA/shellscript/";
|
|
|
-
|
|
|
+ println "project copyMaxKeyShellScript .";
|
|
|
+
|
|
|
+ from "$rootDir/shellscript/"
|
|
|
+ into "$rootDir/build/MaxKey-v${project.version}GA/shellscript/";
|
|
|
}
|
|
|
|
|
|
tasks.register("copyWindowsShellScript",Copy) {
|
|
|
- println "project copyMaxKeyWindowsShellScript .";
|
|
|
- from "$rootDir/shellscript/windows"
|
|
|
- into "$rootDir/build/MaxKey-v${project.version}GA/";
|
|
|
+ println "project copyMaxKeyWindowsShellScript .";
|
|
|
+ from "$rootDir/shellscript/windows"
|
|
|
+ into "$rootDir/build/MaxKey-v${project.version}GA/";
|
|
|
}
|
|
|
|
|
|
build.configure { finalizedBy buildRelease }
|