https://github.com/DatekWireless/slim-spring-webmvc
- https://s01.oss.sonatype.org/
- https://s01.oss.sonatype.org/content/repositories/releases/no/datek/
- https://search.maven.org/
- https://search.maven.org/search?q=slim-spring-webmvc
There is a reference application at https://github.com/DatekWireless/slim-spring-mvc-sample .
dependencies {
implementation 'no.datek:slim-spring-webmvc:0.+'
}@ComponentScan("no.datek.slim")Requires JDK 25 (the Gradle toolchain targets Java 25) and builds with Gradle 9.6 via the wrapper:
./gradlew build
Edit build.gradle and set the desired JRuby version:
final String JRUBY_VERSION = '10.0.4.0';
Run the provided script:
chruby jruby
jruby ./update_gems.rb
- Bump the version in build.gradle and commit and push.
- Go to https://github.com/DatekWireless/slim-spring-webmvc/releases
- Select "Draft a new release"
- Select "Choose a tag"
- Enter the tag for the new version, e.g. "v1.0.2" and press enter.
- Click on "Publish release"
- This will trigger a release on https://github.com/DatekWireless/slim-spring-webmvc/actions
- The release is built and published to Maven Central at:
- The new package will be available after about 20 minutes.
Publishing to Maven Central does not by itself upgrade the consuming apps. Each app
declares a dynamic version constraint (e.g. implementation 'no.datek:slim-spring-webmvc:2.+'
in build.gradle), but the resolved version is pinned in gradle.lockfile. A new release is
ignored until the lock is rewritten.
In the downstream app (e.g. dlc-server):
-
If the release crossed a major version, bump the constraint in
build.gradleto match (e.g.2.+→3.+). Within the same major line, leave it as-is. -
Make sure the local composite build is not overriding the published artifact — the
includeBuild '../slim-spring-webmvc'line insettings.gradlemust be commented out (it is only for local development against a working copy). -
Refresh the dependency lock so the new version is resolved and pinned:
./gradlew --refresh-dependencies --write-locks resolveAndLockAll -
Verify
gradle.lockfilenow points at the new version, then build/test, commit, and push.