yajsync icon indicating copy to clipboard operation
yajsync copied to clipboard

building in 2025

Open StevanWhite opened this issue 1 month ago • 1 comments

Hi,

The README says to run mvn, but there is no pom file. Running ./gradlew (with gradle v. 9.1.0), spews its usual incomprehensible warning and error messages, and fails.

So I wrote an ant file build.xml. Attached.

Copy this into the directory, and type

ant

The three jar files will appear in bin/.

(By default, it builds according to JDK 11. To change that, edit the build.xml.

build.xml.gz

StevanWhite avatar Nov 17 '25 10:11 StevanWhite

I also achieved a build with gradle.

There were several problems, having to do with outdated versions.

First the jcenter() repository ceased to function years ago. And, JDK 1.8 support runs out next year, for most suppliers. And gradle 8.0 was old a long time ago, and has trouble with newer JDKs.

The oldest support JDK is 11. My current gradle is 9.1.0.

Something insisted on a settings.gradle file. Provided one, with the line

rootProject.name='yajsync'

In the top-level build.gradle file, replaced jcenter() with

google()
mavenCentral()

In each of the */build.gradle files, changed the JDK Compatibility from 1.8 to 11. Also updated the JUinit to 4.13.2.

In gradle/wrapper/gradle-wrapper.properties replaced gradle-8.0
with gradle-9.1.0 (this may be excessively new, though)

Also replaced the gradlew script and the gradle-wrapper.jar file with ones from a recent project.

And voilà. ./gradlew builds class files. Easy as that.
Thank goodness we have gradle, to make our lives so much easier, and reduce our grocery prices. (Don't know what gradle task builds the jar files...)

StevanWhite avatar Nov 17 '25 11:11 StevanWhite