forked from vlad-lubenskyi/jxbrowser-installer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbuild.gradle.kts
94 lines (78 loc) · 2.38 KB
/
build.gradle.kts
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
/*
* Copyright 2000-2022 TeamDev.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import org.panteleyev.jpackage.ImageType.*
plugins {
java
id("org.panteleyev.jpackageplugin") version "1.3.1"
id("com.teamdev.jxbrowser.gradle") version "0.0.3"
}
group = "com.teamdev.examples"
version = "1.0"
repositories {
mavenCentral()
}
java {
sourceCompatibility = JavaVersion.VERSION_16
targetCompatibility = JavaVersion.VERSION_16
}
jxbrowser {
version = "7.24.1"
includePreviewBuilds()
}
dependencies {
implementation(jxbrowser.swing())
implementation(jxbrowser.currentPlatform())
}
tasks {
val jarDirectory = file("$buildDir/jars")
jar {
manifest {
attributes["Main-Class"] = "com.teamdev.examples.PomodoroTracker"
}
archiveFileName.set("main.jar")
destinationDirectory.set(file(jarDirectory))
}
register<Copy>("copyDependencies") {
from(configurations.runtimeClasspath).into(jarDirectory)
}
jpackage {
// Build and gather JAR files before packaging.
dependsOn("jar", "copyDependencies")
// The path to Java modules.
val javaModules = "${System.getProperty("java.home")}/jmods"
input = jarDirectory.absolutePath
mainJar = "main.jar"
addModules = listOf("java.base", "java.desktop", "java.logging")
modulePaths = listOf(javaModules)
destination = "$buildDir/dist"
appName = "JxBrowser Example"
appVersion = "${project.version}"
linux {
type = DEB
icon = "jxbrowser-logo.png"
linuxPackageName = "jxbrowser-example"
}
windows {
type = MSI
icon = "jxbrowser-logo.ico"
winMenu = true
winDirChooser = true
}
mac {
type = DMG
icon = "jxbrowser-logo.icns"
}
}
}