From 471e6c20aab98940e23312508e9482990f726ed0 Mon Sep 17 00:00:00 2001 From: jeo Date: Wed, 7 Feb 2018 16:00:30 +0800 Subject: [PATCH] =?UTF-8?q?CORE-25=20=E6=8C=89=E6=96=87=E6=A1=A3=E8=A7=84?= =?UTF-8?q?=E8=8C=83=E6=9E=84=E5=BB=BA10.0=E7=89=88=E6=9C=AC=E6=8A=A5?= =?UTF-8?q?=E8=A1=A8=E9=83=A8=E5=88=86=E7=9A=84jar=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.applet.gradle | 75 ++++++++++++++++++++ build.report-designer.gradle | 45 ++++++++++++ designer_base/build.base.gradle | 104 ++++++++++++++++++++++++++++ designer_chart/build.chart.gradle | 98 +++++++++++++++++++++++++++ designer_form/build.form.gradle | 109 ++++++++++++++++++++++++++++++ 5 files changed, 431 insertions(+) create mode 100644 build.applet.gradle create mode 100644 build.report-designer.gradle create mode 100644 designer_base/build.base.gradle create mode 100644 designer_chart/build.chart.gradle create mode 100644 designer_form/build.form.gradle diff --git a/build.applet.gradle b/build.applet.gradle new file mode 100644 index 0000000000..5e02f17809 --- /dev/null +++ b/build.applet.gradle @@ -0,0 +1,75 @@ +apply plugin: "java" +tasks.withType(JavaCompile){ + options.encoding = "UTF-8" +} + +def basicDir="../" + +task appletJar<<{ + ant{ + delete(dir:"build/classes") + mkdir(dir:"./tmp") + mkdir(dir:"build/classes/main") + copy(todir:"build/classes/"){ + fileset(dir:"${basicDir}/chart/build/classes/main") + fileset(dir:"${basicDir}/report/build/classes/main") + fileset(dir:"${basicDir}/platform/build/classes/main") + } + unjar(src:"${basicDir}/lib-core/fine-core-10.0.jar",dest:"./tmp") + unjar(src:"${basicDir}/lib-core/fine-third-10.0.jar",dest:"./tmp") + unjar(src:"${basicDir}/lib-other/server/servlet-api.jar",dest:"./tmp") + jar(jarfile:"build/libs/fine-applet-10.0.jar"){ + fileset(dir:"build/classes"){ + exclude(name:"*.*") + exclude(name:"bin/*.*") + exclude(name:"classes/**") + exclude(name:"com/fr/schedule/**") + exclude(name:"com/fr/cell/**") + exclude(name:"com/fr/dialog/**") + exclude(name:"com/fr/view/**") + exclude(name:"com/fr/web/**") + exclude(name:"com/fr/fs/**") + exclude(name:"com/fr/design/**") + exclude(name:"com/fr/start/**") + exclude(name:"com/fr/process/**") + } + fileset(dir:"./tmp"){ + include(name:"javax/mail/**") + include(name:"javax/servlet/**") + include(name:"org/freehep/**") + include(name:"com/fr/third/JAI/**") + include(name:"com/fr/third/antlr/**") + include(name:"com/fr/third/javax/**") + include(name:"com/sun/xml/**") + include(name:"javax/xml/**") + + } + fileset(dir:"build/classes"){ + include(name:"com/fr/web/*.class") + include(name:"com/fr/web/attr/*.class") + } + } + delete(dir:"./tmp") + def jdk6home= "D:/FineReport/develop/java/jdk1.6u35" + def keystore="frapplet.store" + def keycert="fr.cert" + def keypassword="123456" + def keyalias="fr" + + exec(executable:"${jdk6home}/bin/keytool"){ + arg(line:"-genkey -dname "CN=FineReport L=NanJing C=China" -keystore ${keystore} -alias ${keyalias} -validity 3650 -storepass ${keypassword}") + } + exec(executable:"${jdk6home}/bin/keytool"){ + arg(line:"-export -keystore ${keystore} -alias ${keyalias} -file ${keycert} -storepass ${keypassword}") + } + + exec(executable:"${jdk6home}/bin/jarsigner"){ + arg(line:"-keystore ${keystore} -storepass ${keypassword} 'build/libs/fine-applet-10.0.jar' ${keyalias}") + } + delete(file:"${keystore}") + delete(file:"${keycert}") + delete(dir:"build/classes") + + } + +} \ No newline at end of file diff --git a/build.report-designer.gradle b/build.report-designer.gradle new file mode 100644 index 0000000000..98065b2ffc --- /dev/null +++ b/build.report-designer.gradle @@ -0,0 +1,45 @@ + +apply plugin: 'java' +tasks.withType(JavaCompile){ + options.encoding = 'UTF-8' +} +//指定构建的jdk版本 +sourceCompatibility=1.6 + +//jar包版本 +version='10.0' +//jar包名称 +jar{ + baseName='fine-report-designer' +} + +def srcDir="." +def baseDir=".." + +//获取什么分支名 +FileTree files =fileTree(dir:'./',include:'build.*.gradle') +def buildDir=files[0].path.substring(0,files[0].path.lastIndexOf ('\\')) +def branchName=buildDir.substring(buildDir.lastIndexOf ('\\')+1) + +//输出jar名称 +FileTree f=fileTree(dir:"${baseDir}/design/designer_base/build/libs",include:"**/*.jar"); +f.each{File file-> + println "----------${file.path}" +} +task unjars { + ant{ + unjar(dest:"build/classes/main"){ + fileset(dir:"${baseDir}/design/designer_base/build/libs"){ + include(name:'fr-*.jar') + } + fileset(dir:"${baseDir}/design/designer_chart/build/libs"){ + include(name:'fr-*.jar') + } + fileset(dir:"${baseDir}/design/designer_form/build/libs"){ + include(name:'fr-*.jar') + } + } + + } +} +jar.dependsOn unjars \ No newline at end of file diff --git a/designer_base/build.base.gradle b/designer_base/build.base.gradle new file mode 100644 index 0000000000..94486bc00e --- /dev/null +++ b/designer_base/build.base.gradle @@ -0,0 +1,104 @@ +apply plugin: 'java' +tasks.withType(JavaCompile){ + options.encoding = 'UTF-8' +} +buildscript { + repositories { + maven { + url "https://maven.eveoh.nl/content/repositories/releases" + } + } + + dependencies { + classpath "nl.eveoh:gradle-aspectj:1.6" + } +} + +repositories { + mavenCentral() +} + +project.ext { + aspectjVersion = '1.8.4' +} + +apply plugin: 'aspectj' + +//指定构建的jdk版本 +sourceCompatibility=1.7 +//指定生成jar包版本 +version='10.0' +//生成jar包重命名 +jar{ + baseName='fr-designer-core' +} + + +def srcDir="." +def baseDir=".." +ant{ + delete(dir:"src/main") + mkdir(dir:"src/main/java") + move(todir:"src/main/java"){ + fileset(dir:"src",includes:"com/**") + } +} +//指定源码路径 +//sourceSets{ +// main{ +// java{ +// srcDirs=["${srcDir}/src"] +// } +// } +//} +//获取什么分支名 +FileTree files =fileTree(dir:'./',include:'build.*.gradle') +def buildDir=files[0].path.substring(0,files[0].path.lastIndexOf ('\\')) +buildDir=buildDir.substring(0,buildDir.lastIndexOf ('\\')) +def branchName=buildDir.substring(buildDir.lastIndexOf ('\\')+1) + +//声明外部依赖 +dependencies{ + compile fileTree(dir:"../${baseDir}/lib-other",include:'**/*.jar') + compile fileTree(dir:"../${baseDir}/lib-core",include:'**/*.jar') + compile fileTree(dir:"../${baseDir}/lib-design",include:'**/*.jar') + compile fileTree(dir:"../${baseDir}",include:"**/build/libs/*.jar",exclude:"bi/**/*.jar") + testCompile 'junit:junit:4.12' +} + +//输出依赖报 +FileTree f=fileTree(dir:"../${baseDir}/lib-design",include:"**/*.jar"); +f.each{File file-> + println "----------${file.path}" +} +//复制非.java文件到classes文件夹下参与打包 +task copyFile(type:Copy,dependsOn:compileJava){ + copy{ + from ("${srcDir}/src/main/java"){ + exclude '**/.setting/**','.classpath','.project','**/*.java','**/*.db','**/*.g','**/package.html' + } + into 'build/classes/main' + } + +} + + +//压缩项目中的js文件 +task compressJS{ + ant.taskdef(name:'yuicompress',classname:'com.yahoo.platform.yui.compressor.YUICompressTask'){ + classpath { + fileset(dir:"../${baseDir}/lib4build",includes:'**/*.jar') + } + } + ant.yuicompress(linebreak:"500",warn:"false", munge:"yes",preserveallsemicolons:"false",charset:"utf-8",encoding:"utf-8",outputfolder:'build/classes/main'){ + fileset (dir:"${srcDir}/src/main/java"){ + include (name:'**/*.js') + include (name:'**/*.css') + } + + } +} +jar.dependsOn compressJS + + + diff --git a/designer_chart/build.chart.gradle b/designer_chart/build.chart.gradle new file mode 100644 index 0000000000..2bf65a5f0a --- /dev/null +++ b/designer_chart/build.chart.gradle @@ -0,0 +1,98 @@ +apply plugin: 'java' +tasks.withType(JavaCompile){ + options.encoding = 'UTF-8' +} +buildscript { + repositories { + maven { + url "https://maven.eveoh.nl/content/repositories/releases" + } + } + + dependencies { + classpath "nl.eveoh:gradle-aspectj:1.6" + } +} + +repositories { + mavenCentral() +} + +project.ext { + aspectjVersion = '1.8.4' +} + +apply plugin: 'aspectj' + +//指定构建的jdk版本 +sourceCompatibility=1.7 +//指定生成jar包版本 +version='10.0' +//生成jar包重命名 +jar{ + baseName='fr-designer-chart' +} + + +def srcDir="." +def baseDir=".." +ant{ + delete(dir:"src/main") + mkdir(dir:"src/main/java") + move(todir:"src/main/java"){ + fileset(dir:"src",includes:"com/**") + } +} +//指定源码路径 +//sourceSets{ +// main{ +// java{ +// srcDirs=["${srcDir}/src"] +// } +// } +//} +//获取什么分支名 +FileTree files =fileTree(dir:'./',include:'build.*.gradle') +def buildDir=files[0].path.substring(0,files[0].path.lastIndexOf ('\\')) +buildDir=buildDir.substring(0,buildDir.lastIndexOf ('\\')) +def branchName=buildDir.substring(buildDir.lastIndexOf ('\\')+1) + +//声明外部依赖 +dependencies{ + compile fileTree(dir:"../${baseDir}/lib-other",include:'**/*.jar') + compile fileTree(dir:"../${baseDir}/lib-core",include:'**/*.jar') + compile fileTree(dir:"../${baseDir}/lib-design",include:'**/*.jar') + compile fileTree(dir:"../${baseDir}",include:"**/build/libs/*.jar",exclude:"bi/**/*.jar") + testCompile 'junit:junit:4.12' +} +//复制非.java文件到classes文件夹下参与打包 +task copyFile(type:Copy,dependsOn:compileJava){ + copy{ + from ("${srcDir}/src/main/java"){ + exclude '**/.setting/**','.classpath','.project','**/*.java','**/*.db','**/*.g','**/package.html' + } + into 'build/classes/main' + } + +} + + +//压缩项目中的js文件 +task compressJS{ + ant.taskdef(name:'yuicompress',classname:'com.yahoo.platform.yui.compressor.YUICompressTask'){ + classpath { + fileset(dir:"../${baseDir}/lib4build",includes:'**/*.jar') + } + } + ant.yuicompress(linebreak:"500",warn:"false", munge:"yes",preserveallsemicolons:"false",charset:"utf-8",encoding:"utf-8",outputfolder:'build/classes/main'){ + fileset (dir:"${srcDir}/src/main/java"){ + include (name:'**/*.js') + include (name:'**/*.css') + } + + } +} +jar.dependsOn compressJS + + + diff --git a/designer_form/build.form.gradle b/designer_form/build.form.gradle new file mode 100644 index 0000000000..f42976dd64 --- /dev/null +++ b/designer_form/build.form.gradle @@ -0,0 +1,109 @@ +apply plugin: 'java' +tasks.withType(JavaCompile){ + options.encoding = 'UTF-8' +} +buildscript { + repositories { + maven { + url "https://maven.eveoh.nl/content/repositories/releases" + } + } + + dependencies { + classpath "nl.eveoh:gradle-aspectj:1.6" + } +} + +repositories { + mavenCentral() +} + +project.ext { + aspectjVersion = '1.8.4' +} + +apply plugin: 'aspectj' + +//指定构建的jdk版本 +sourceCompatibility=1.7 +//指定生成jar包版本 +version='10.0' +//生成jar包重命名 +jar{ + baseName='fr-designer-report' +} + + +def srcDir="." +def baseDir=".." +ant{ + delete(dir:"src/main") + mkdir(dir:"src/main/java") + move(todir:"src/main/java"){ + fileset(dir:"../designer/src",includes:"com/**") + fileset(dir:"src",includes:"com/**") + } +} +//指定源码路径 +//sourceSets{ +// main{ +// java{ +// srcDirs=["${srcDir}/src", +// "${srcDir}/../designer/src"] +// } +// } +//} +//获取什么分支名 +FileTree files =fileTree(dir:'./',include:'build.*.gradle') +def buildDir=files[0].path.substring(0,files[0].path.lastIndexOf ('\\')) +buildDir=buildDir.substring(0,buildDir.lastIndexOf ('\\')) +def branchName=buildDir.substring(buildDir.lastIndexOf ('\\')+1) + +//声明外部依赖 +dependencies{ + compile fileTree(dir:"../${baseDir}/lib-other",include:'**/*.jar') + compile fileTree(dir:"../${baseDir}/lib-core",include:"**/*.jar") + compile fileTree(dir:"../${baseDir}/lib-design",include:'**/*.jar') + compile fileTree(dir:"../${baseDir}",include:"**/build/libs/*.jar",exclude:"bi/**/*.jar") + testCompile 'junit:junit:4.12' +} +//复制非.java文件到classes文件夹下参与打包 + +//指明无法编译文件所在路径 +def dataContent ={def dir -> + copySpec{ + from ("${dir}"){ + exclude '**/.setting/**','.classpath','.project','**/*.java','**/*.db','**/*.g','**/package.html' + } + } +} + +task copyFile(type:Copy,dependsOn:compileJava){ + copy{ + with dataContent.call("${srcDir}/src/main/java") + // with dataContent.call("${srcDir}/../designer/src") + into 'build/classes/main' + } + +} + + +//压缩项目中的js文件 +task compressJS{ + ant.taskdef(name:'yuicompress',classname:'com.yahoo.platform.yui.compressor.YUICompressTask'){ + classpath { + fileset(dir:"../${baseDir}/lib4build",includes:'**/*.jar') + } + } + ant.yuicompress(linebreak:"500",warn:"false", munge:"yes",preserveallsemicolons:"false",charset:"utf-8",encoding:"utf-8",outputfolder:'build/classes/main'){ + fileset (dir:"${srcDir}/src/main/java"){ + include (name:'**/*.js') + include (name:'**/*.css') + } + + } +} +jar.dependsOn compressJS + + +