mirror of
https://github.com/aNNiMON/Own-Programming-Language-Tutorial.git
synced 2024-09-20 08:44:20 +03:00
Генерируемая дата сборки в версии приложения
This commit is contained in:
parent
59a86c7d54
commit
7b8c6ad406
1
.gitignore
vendored
1
.gitignore
vendored
@ -4,3 +4,4 @@
|
|||||||
/store/
|
/store/
|
||||||
/optimizations/
|
/optimizations/
|
||||||
/nbproject/private/
|
/nbproject/private/
|
||||||
|
/src/main/generatedJava/
|
29
build.gradle
29
build.gradle
@ -7,6 +7,9 @@ if (!hasProperty('mainClass')) {
|
|||||||
ext.mainClass = 'com.annimon.ownlang.Main'
|
ext.mainClass = 'com.annimon.ownlang.Main'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ext.generatedJavaDir = "${rootProject.projectDir}/src/main/generatedJava"
|
||||||
|
sourceSets.main.java.srcDirs += project.generatedJavaDir
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
jcenter()
|
jcenter()
|
||||||
}
|
}
|
||||||
@ -20,6 +23,21 @@ buildscript {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
task generateJavaSources() {
|
||||||
|
doLast {
|
||||||
|
def source = """
|
||||||
|
package com.annimon.ownlang;
|
||||||
|
class Gen {
|
||||||
|
public static final String BUILD_DATE = "${new Date().format('YYMMdd')}";
|
||||||
|
}
|
||||||
|
"""
|
||||||
|
def genFile = new File("${project.generatedJavaDir}/com/annimon/ownlang/Gen.java")
|
||||||
|
genFile.getParentFile().mkdirs()
|
||||||
|
genFile.write(source)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
compileJava.dependsOn(generateJavaSources)
|
||||||
|
|
||||||
task run(dependsOn: classes, type: JavaExec) {
|
task run(dependsOn: classes, type: JavaExec) {
|
||||||
main = project.mainClass
|
main = project.mainClass
|
||||||
classpath = sourceSets.main.runtimeClasspath
|
classpath = sourceSets.main.runtimeClasspath
|
||||||
@ -37,13 +55,14 @@ task runOptimizing(dependsOn: classes, type: JavaExec) {
|
|||||||
|
|
||||||
task dist(dependsOn: classes, type: Jar) {
|
task dist(dependsOn: classes, type: Jar) {
|
||||||
from files(sourceSets.main.output.classesDir)
|
from files(sourceSets.main.output.classesDir)
|
||||||
|
from files(sourceSets.main.output.resourcesDir)
|
||||||
from {configurations.compile.collect {zipTree(it)}}
|
from {configurations.compile.collect {zipTree(it)}}
|
||||||
from files(sourceSets.main.resources)
|
destinationDir file("$rootProject.projectDir/dist")
|
||||||
libsDirName = "$rootProject.projectDir/dist"
|
|
||||||
|
|
||||||
manifest {
|
manifest.attributes(
|
||||||
attributes 'Main-Class': project.mainClass
|
'Main-Class': project.mainClass,
|
||||||
}
|
'Build-Date': new Date().format('YYMMdd')
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
task proguard(dependsOn: dist, type: proguard.gradle.ProGuardTask) {
|
task proguard(dependsOn: dist, type: proguard.gradle.ProGuardTask) {
|
||||||
|
@ -22,7 +22,7 @@ import java.util.concurrent.TimeUnit;
|
|||||||
*/
|
*/
|
||||||
public final class Main {
|
public final class Main {
|
||||||
|
|
||||||
public static final String VERSION = "1.3.0";
|
public static final String VERSION = "1.3.0_" + Gen.BUILD_DATE;
|
||||||
|
|
||||||
private static String[] ownlangArgs = new String[0];
|
private static String[] ownlangArgs = new String[0];
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user