Build: Update gradle to 8.5

This commit is contained in:
zzz
2024-01-28 12:09:10 +00:00
parent 883aab8d5a
commit c54ec4d458
25 changed files with 177 additions and 129 deletions

View File

@ -362,7 +362,7 @@ distributions. See the source package for the additional license information.
Admin Manager:
Public domain
Gradle wrapper 5.2.1:
Gradle wrapper 8.5:
(not included in most distribution packages)
Copyright (c) 2017 the original author or authors.
Copyright (c) 2023 the original author or authors.
See licenses/LICENSE-Apache2.0.txt

View File

@ -1,3 +1,7 @@
plugins {
id 'java-library'
}
sourceSets {
main {
java {
@ -8,10 +12,10 @@ sourceSets {
}
dependencies {
compile project(':core')
compile project(':router')
compile project(':installer')
compile project(':apps:systray')
api project(':core')
api project(':router')
api project(':installer')
api project(':apps:systray')
}
// Create the java files from the po files. The jar task will compile them.

View File

@ -1,4 +1,5 @@
plugins {
id 'java-library'
id 'war'
}
@ -11,13 +12,15 @@ sourceSets {
}
dependencies {
providedCompile project(':router')
providedCompile project(':apps:jetty')
providedCompile files('../../installer/lib/wrapper/all/wrapper.jar')
api project(':router')
api project(':apps:jetty')
api files('../../installer/lib/wrapper/all/wrapper.jar')
api fileTree("../jetty/apache-tomcat-${tomcatVersion}")
api fileTree("../jetty/jetty-distribution-${jettyVersion}")
}
war {
archiveName 'jsonrpc.war'
archiveBaseName.set('jsonrpc')
webXml = file('web.xml')
}

View File

@ -1,4 +1,5 @@
plugins {
id 'java-library'
id 'war'
}
@ -12,14 +13,14 @@ sourceSets {
}
dependencies {
compile project(':core')
providedCompile project(':apps:systray')
compile 'gnu.getopt:java-getopt:1.0.13'
providedCompile project(':apps:ministreaming')
providedCompile project(':apps:jetty')
api project(':core')
api project(':apps:systray')
api 'gnu.getopt:java-getopt:1.0.13'
api project(':apps:ministreaming')
api project(':apps:jetty')
// this is not needed except for standalone,
// but we build the standalone classes even for non-standalone
providedCompile project(':apps:desktopgui')
api project(':apps:desktopgui')
}
task i2psnarkJar(type: Jar) {

View File

@ -1,4 +1,5 @@
plugins {
id 'java-library'
id 'war'
}
@ -18,13 +19,14 @@ sourceSets {
}
dependencies {
compile project(':core')
providedCompile project(':apps:ministreaming')
compile 'gnu.getopt:java-getopt:1.0.13'
providedCompile project(':apps:jetty')
api project(':core')
api project(':apps:ministreaming')
api 'gnu.getopt:java-getopt:1.0.13'
api project(':apps:jetty')
implementation 'org.apache.ant:ant:1.10.10'
implementation fileTree("../jetty/apache-tomacat-${tomcatVersion}")
// seems like it should be compileOnly but that doesn't work
implementation 'org.apache.ant:ant:1.10.14'
api fileTree("../jetty/apache-tomcat-${tomcatVersion}")
}
// Create the java files from the po files. The jar task will compile them.
@ -159,12 +161,12 @@ task tempBeansJar(type: Jar) {
include '**/EditBean.class'
include '**/ui/*.class'
include '**/IndexBean.class'
baseName = 'temp-beans'
archiveBaseName = 'temp-beans'
}
// only for android
task uiJar(type: Jar) {
baseName = 'i2ptunnel-ui'
archiveBaseName = 'i2ptunnel-ui'
from sourceSets.main.output
include '**/ui/*.class'
manifest {
@ -177,6 +179,7 @@ artifacts {
}
war {
duplicatesStrategy 'exclude'
include '**/EditBean.class'
include '**/ui/*.class'
include '**/IndexBean.class'

View File

@ -14,8 +14,9 @@ sourceSets {
}
dependencies {
providedCompile project(':core')
providedCompile project(':apps:jetty')
implementation project(':core')
implementation project(':apps:jetty')
implementation fileTree("../jetty/apache-tomcat-${tomcatVersion}")
}
war {

View File

@ -1,3 +1,7 @@
plugins {
id 'java-library'
}
archivesBaseName = 'jetty-i2p'
sourceSets {
@ -9,30 +13,30 @@ sourceSets {
}
dependencies {
ext.jettyVersion = '9.3.29.v20201019'
ext.jettyVersion = '9.3.30.v20211001'
ext.tomcatVersion = "${tomcatVersion}"
compile project(':core')
compile 'org.eclipse.jetty:jetty-http:' + ext.jettyVersion
compile 'org.eclipse.jetty:jetty-io:' + ext.jettyVersion
compile 'org.eclipse.jetty:jetty-security:' + ext.jettyVersion
compile 'org.eclipse.jetty:jetty-server:' + ext.jettyVersion
compile 'org.eclipse.jetty:jetty-servlet:' + ext.jettyVersion
compile 'org.eclipse.jetty:jetty-util:' + ext.jettyVersion
compile 'org.eclipse.jetty:jetty-xml:' + ext.jettyVersion
runtime 'org.eclipse.jetty:apache-jsp:' + ext.jettyVersion
runtime 'org.eclipse.jetty:jetty-continuation:' + ext.jettyVersion
compile 'org.eclipse.jetty:jetty-deploy:' + ext.jettyVersion
runtime 'org.eclipse.jetty:jetty-jmx:' + ext.jettyVersion
runtime 'org.eclipse.jetty:jetty-rewrite:' + ext.jettyVersion
runtime 'org.eclipse.jetty:jetty-servlets:' + ext.jettyVersion
runtime 'org.eclipse.jetty:jetty-start:' + ext.jettyVersion
compile 'org.eclipse.jetty:jetty-webapp:' + ext.jettyVersion
compile 'org.apache.tomcat:tomcat-api:' + ext.tomcatVersion
runtime 'org.apache.tomcat:tomcat-el-api:' + ext.tomcatVersion
runtime 'org.apache.tomcat:tomcat-jasper:' + ext.tomcatVersion
runtime 'org.apache.tomcat:tomcat-jasper-el:' + ext.tomcatVersion
runtime 'org.apache.tomcat:tomcat-jsp-api:' + ext.tomcatVersion
runtime 'org.apache.tomcat:tomcat-juli:' + ext.tomcatVersion
runtime 'org.apache.tomcat:tomcat-util:' + ext.tomcatVersion
runtime 'org.apache.tomcat:tomcat-util-scan:' + ext.tomcatVersion
api project(':core')
api 'org.eclipse.jetty:jetty-http:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-io:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-security:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-server:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-servlet:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-util:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-xml:' + ext.jettyVersion
api 'org.eclipse.jetty:apache-jsp:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-continuation:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-deploy:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-jmx:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-rewrite:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-servlets:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-start:' + ext.jettyVersion
api 'org.eclipse.jetty:jetty-webapp:' + ext.jettyVersion
api 'org.apache.tomcat:tomcat-api:' + ext.tomcatVersion
api 'org.apache.tomcat:tomcat-el-api:' + ext.tomcatVersion
api 'org.apache.tomcat:tomcat-jasper:' + ext.tomcatVersion
api 'org.apache.tomcat:tomcat-jasper-el:' + ext.tomcatVersion
api 'org.apache.tomcat:tomcat-jsp-api:' + ext.tomcatVersion
api 'org.apache.tomcat:tomcat-juli:' + ext.tomcatVersion
api 'org.apache.tomcat:tomcat-util:' + ext.tomcatVersion
api 'org.apache.tomcat:tomcat-util-scan:' + ext.tomcatVersion
}

View File

@ -1,3 +1,7 @@
plugins {
id 'java-library'
}
sourceSets {
main {
java {
@ -7,5 +11,5 @@ sourceSets {
}
dependencies {
compile project(':core')
api project(':core')
}

View File

@ -44,7 +44,7 @@ configurations {
tests
}
task testJar(type: Jar) {
baseName = 'mstreaming-test'
archiveBaseName = 'mstreaming-test'
dependsOn classes
from sourceSets.test.output
}

View File

@ -1,4 +1,5 @@
plugins {
id 'java-library'
id 'war'
id 'scala'
}
@ -15,21 +16,24 @@ sourceSets {
}
dependencies {
compile project(':core')
compile project(':router')
compile project(':installer')
compile 'gnu.getopt:java-getopt:1.0.13'
api project(':core')
api project(':router')
api project(':installer')
api 'gnu.getopt:java-getopt:1.0.13'
// below were providedCompile
providedCompile project(':apps:desktopgui')
providedCompile project(':apps:systray')
providedCompile project(':apps:jetty')
providedCompile project(':apps:jrobin')
api project(':apps:desktopgui')
api project(':apps:systray')
api project(':apps:jetty')
api project(':apps:jrobin')
api files('../../installer/lib/wrapper/all/wrapper.jar')
api fileTree("../jetty/jetty-distribution-${jettyVersion}")
implementation 'org.apache.ant:ant:1.10.10'
implementation fileTree("../jetty/apache-tomacat-${tomcatVersion}")
testCompile "org.scala-lang:scala-library:2.12.4"
testCompile 'org.scalatest:scalatest_2.12:3.0.4'
// seems like it should be compileOnly but that doesn't work
implementation 'org.apache.ant:ant:1.10.14'
api fileTree("../jetty/apache-tomcat-${tomcatVersion}")
// don't use 2.12.4, stack overflow: https://github.com/sbt/zinc/issues/1010
testImplementation "org.scala-lang:scala-library:2.12.5"
testImplementation 'org.scalatest:scalatest_2.12:3.0.4'
}
if (System.getenv("TARGET_JAVA_HOME") == null && JavaVersion.current() != JavaVersion.VERSION_1_7) {
@ -173,6 +177,7 @@ war.dependsOn(bundle,precompileJsp)
war {
duplicatesStrategy 'exclude'
rootSpec.exclude('**/*.jar')
rootSpec.exclude('/com/vuze/**/*')
rootSpec.exclude('/edu/internet2/**/*')

View File

@ -1,3 +1,7 @@
plugins {
id 'java-library'
}
sourceSets {
main {
java {
@ -12,7 +16,7 @@ sourceSets {
}
dependencies {
compile project(':core')
compile project(':apps:ministreaming')
compile 'gnu.getopt:java-getopt:1.0.13'
api project(':core')
api project(':apps:ministreaming')
api 'gnu.getopt:java-getopt:1.0.13'
}

View File

@ -12,11 +12,13 @@ sourceSets {
}
dependencies {
providedCompile project(':core')
providedCompile project(':apps:jetty')
implementation project(':core')
implementation project(':apps:jetty')
implementation 'org.apache.ant:ant:1.10.10'
implementation fileTree("../jetty/apache-tomacat-${tomcatVersion}")
// seems like it should be compileOnly but that doesn't work
implementation 'org.apache.ant:ant:1.10.14'
implementation fileTree("../jetty/apache-tomcat-${tomcatVersion}")
implementation fileTree("../jetty/jetty-distribution-${jettyVersion}")
}
// Create the java files from the po files. The jar task will compile them.

View File

@ -12,8 +12,8 @@ sourceSets {
}
dependencies {
compile project(':core')
providedCompile project(':apps:jetty')
implementation project(':core')
implementation project(':apps:jetty')
}
// Create the java files from the po files. The jar task will compile them.
@ -36,6 +36,7 @@ war {
webInf {
into 'classes'
from 'src/susimail.properties'
duplicatesStrategy 'include'
}
webXml = file('src/WEB-INF/web.xml')
}

View File

@ -1,3 +1,7 @@
plugins {
id 'java-library'
}
sourceSets {
main {
java {
@ -7,5 +11,5 @@ sourceSets {
}
dependencies {
compile project(':core')
api project(':core')
}

View File

@ -71,9 +71,10 @@ subprojects {
}
dependencies {
testCompile 'junit:junit:4.+'
testCompile 'org.hamcrest:hamcrest-library:1.3'
testCompile 'org.mockito:mockito-core:2.5.0'
// https://stackoverflow.com/questions/44493378/whats-the-difference-between-api-api-and-compile-in-gradle
testImplementation 'junit:junit:4.+'
testImplementation 'org.hamcrest:hamcrest-library:1.3'
testImplementation 'org.mockito:mockito-core:2.5.0'
}
@ -118,14 +119,16 @@ task codeCoverageReport(type: JacocoReport) {
classDirectories.from(files(subprojects.sourceSets.main.output))
executionData.from(files(subprojects.jacocoTestReport.executionData))
doFirst {
executionData = files(executionData.findAll { it.exists() })
}
// > The value for this file collection is final and cannot be changed.
//doFirst {
// executionData = files(executionData.findAll { it.exists() })
//}
reports {
xml.enabled true
// https://stackoverflow.com/questions/73546718/changing-enabled-to-required-throws-an-error-in-gradle
xml.required.set(true)
xml.destination file("${buildDir}/reports/jacoco/report.xml")
html.enabled true
html.required.set(true)
html.destination file("${buildDir}/reports/jacoco/html")
}
}

View File

@ -1,7 +1,7 @@
plugins {
id 'java-library'
id 'scala'
id 'me.champeau.gradle.jmh' version '0.4.8'
id 'me.champeau.jmh' version '0.7.2'
}
archivesBaseName = 'i2p'
@ -41,15 +41,16 @@ sourceSets {
}
dependencies {
implementation 'gnu.getopt:java-getopt:1.0.13'
implementation 'org.gnu.gettext:libintl:0.18.3'
api 'gnu.getopt:java-getopt:1.0.13'
api 'org.gnu.gettext:libintl:0.18.3'
if (project.hasProperty("with.jbigi")) {
runtimeOnly project(path: ':installer', configuration: 'jbigi')
}
testCompile "org.scala-lang:scala-library:2.12.4"
testCompile 'org.scalatest:scalatest_2.12:3.0.4'
// don't use 2.12.4, stack overflow: https://github.com/sbt/zinc/issues/1010
testImplementation "org.scala-lang:scala-library:2.12.5"
testImplementation 'org.scalatest:scalatest_2.12:3.0.4'
}
if (System.getenv("TARGET_JAVA_HOME") == null && JavaVersion.current() != JavaVersion.VERSION_1_7) {
@ -65,6 +66,7 @@ if (System.getenv("TARGET_JAVA_HOME") == null && JavaVersion.current() != JavaVe
args = ['-R', 'build/classes/scala/test', '-o']
classpath = sourceSets.test.runtimeClasspath
}
test.dependsOn scalaTest
}
@ -94,7 +96,7 @@ configurations {
tests
}
task testJar(type: Jar) {
baseName = 'i2p-test'
archiveBaseName = 'i2p-test'
dependsOn classes
from sourceSets.test.output
}

View File

@ -1,6 +1,7 @@
# Override these in ~/.gradle/gradle.properties if necessary
java7BootClasspath=
tomcatVersion=9.0.45
tomcatVersion=9.0.62
jettyVersion = '9.3.30.v20211001'
org.gradle.caching = true
org.gradle.parallel = true
org.gradle.configureondemand = true

View File

@ -86,23 +86,25 @@ task prepUpdate(type: Copy) {
task updaterRouter(type: Zip) {
description 'makes an i2pupdate.zip file containing core and router jars only'
dependsOn prepUpdateRouter
archiveName 'i2pupdate.zip'
destinationDir file('.')
// https://stackoverflow.com/questions/54501697/gradle-war-plugin-how-to-change-name-of-an-archive
// https://discuss.gradle.org/t/destinationdir-is-deprecated-archivename-is-deprecated/31586
archiveFileName.set('i2pupdate.zip')
destinationDirectory.set(file('.'))
from 'pkg-temp'
}
task updaterSmall(type: Zip) {
description 'makes an i2pupdate.zip file with a subset of the resources'
dependsOn prepUpdateSmall
archiveName 'i2pupdate.zip'
destinationDir file('.')
archiveFileName.set('i2pupdate.zip')
destinationDirectory.set(file('.'))
from 'pkg-temp'
}
task updater(type: Zip) {
description 'makes an i2pupdate.zip file'
dependsOn prepUpdate
archiveName 'i2pupdate.zip'
destinationDir file('.')
archiveFileName.set('i2pupdate.zip')
destinationDirectory.set(file('.'))
from 'pkg-temp'
}

Binary file not shown.

View File

@ -1,5 +1,5 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.2.1-bin.zip

2
gradlew vendored
View File

@ -28,7 +28,7 @@ APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS=""
DEFAULT_JVM_OPTS='"-Xmx64m"'
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"

2
gradlew.bat vendored
View File

@ -14,7 +14,7 @@ set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS=
set DEFAULT_JVM_OPTS="-Xmx64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome

View File

@ -19,12 +19,12 @@ sourceSets {
}
dependencies {
compile project(':core')
runtime files('lib/wrapper/all/wrapper.jar')
implementation project(':core')
runtimeOnly files('lib/wrapper/all/wrapper.jar')
}
jar {
baseName 'utility'
archiveBaseName.set('utility')
from project(':core').sourceSets.main.output
include 'net/i2p/installer/**'
include 'net/i2p/util/FileUtil.class'
@ -34,7 +34,7 @@ jar {
}
task jbigiJar(type: Jar) {
baseName = 'jbigi'
archiveBaseName = 'jbigi'
from sourceSets.jbigi.output
}

View File

@ -1,3 +1,7 @@
plugins {
id 'java-library'
}
apply plugin: 'application'
application {
@ -6,28 +10,28 @@ application {
}
dependencies {
implementation project(':router')
implementation project(':apps:ministreaming')
implementation project(':apps:streaming')
implementation project(':apps:i2ptunnel')
implementation project(':apps:jetty')
implementation project(':apps:i2psnark')
implementation project(':apps:systray')
implementation project(':apps:BOB')
implementation project(':apps:sam')
implementation project(':apps:routerconsole')
implementation project(':apps:desktopgui')
implementation project(':apps:jrobin')
implementation project(':apps:addressbook')
implementation project(':apps:susidns')
implementation project(':apps:susimail')
implementation project(':apps:i2pcontrol')
implementation project(':apps:imagegen')
implementation project(':core')
implementation project(':router')
implementation project(path : ':installer', configuration: 'jbigi')
implementation files("../apps/susidns/src/lib/standard.jar")
implementation files("../apps/susidns/src/lib/jstl.jar")
api project(':router')
api project(':apps:ministreaming')
api project(':apps:streaming')
api project(':apps:i2ptunnel')
api project(':apps:jetty')
api project(':apps:i2psnark')
api project(':apps:systray')
api project(':apps:BOB')
api project(':apps:sam')
api project(':apps:routerconsole')
api project(':apps:desktopgui')
api project(':apps:jrobin')
api project(':apps:addressbook')
api project(':apps:susidns')
api project(':apps:susimail')
api project(':apps:i2pcontrol')
api project(':apps:imagegen')
api project(':core')
api project(':router')
api project(path : ':installer', configuration: 'jbigi')
api files("../apps/susidns/src/lib/standard.jar")
api files("../apps/susidns/src/lib/jstl.jar")
}
import java.nio.file.*
@ -55,7 +59,7 @@ task copyWars {
filter({it.getName().endsWith('war')}).each { file ->
println "copying war $file exists ${file.exists()}"
File target = new File(webappDir, file.getName())
Files.copy(file.toPath(), target.toPath())
Files.copy(file.toPath(), target.toPath(), java.nio.file.StandardCopyOption.REPLACE_EXISTING)
}
}
}
@ -71,7 +75,7 @@ task copyGeoip() {
File target = new File(geoipDir, "GeoLite2-Country.mmdb")
File source = new File("$rootDir/installer/resources/GeoLite2-Country.mmdb.gz")
InputStream is = new GZIPInputStream(new FileInputStream(source))
java.nio.file.Files.copy(is, target.toPath())
java.nio.file.Files.copy(is, target.toPath(), java.nio.file.StandardCopyOption.REPLACE_EXISTING)
}
}

View File

@ -25,7 +25,7 @@ sourceSets {
dependencies {
api project(':core')
implementation 'gnu.getopt:java-getopt:1.0.13'
api 'gnu.getopt:java-getopt:1.0.13'
testImplementation project(path: ':core', configuration: 'tests')
}