Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Alles einsteigen! Einen eigenen Release Train m...
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Roland Weisleder
May 03, 2022
Programming
350
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Alles einsteigen! Einen eigenen Release Train mit Maven umsetzen
Roland Weisleder
May 03, 2022
More Decks by Roland Weisleder
See All by Roland Weisleder
Enforcing Architecture in Legacy Systems
rweisleder
0
8
Architecture as Code in Practice
rweisleder
0
36
Three Principles To Bring Your Legacy Code Into the Future
rweisleder
0
260
Unit Test Your Java Architecture With ArchUnit
rweisleder
0
590
Immer wieder die gleichen Fehler? Nicht mit ArchUnit!
rweisleder
0
380
7 Tipps für eine verständliche Git-Historie
rweisleder
0
190
Other Decks in Programming
See All in Programming
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
110
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
1k
複数の Claude Code が"放置"されてしまう問題をCLI ダッシュボードを自作して解決した話
sumihiro3
0
170
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
140
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
2
280
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
440
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
280
AIが無かった頃の素敵な出会いの話
codmoninc
1
240
[RVD26] Vibe Architecture en 2040 : Darwin a-t-il (enfin) eu raison des architectes ?
alexandretouret
0
100
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
1
190
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
240
吝嗇家のためのAI活用 / AI development for miser - ChatGPT + Issue Driven Development
tooppoo
0
200
Featured
See All Featured
Designing for Timeless Needs
cassininazir
1
400
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
910
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
340
Raft: Consensus for Rubyists
vanstee
141
7.6k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Design in an AI World
tapps
1
270
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
New Earth Scene 8
popppiees
3
2.4k
Git: the NoSQL Database
bkeepers
PRO
432
67k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
Transcript
Alles einsteigen! Einen eigenen Release Train mit Maven umsetzen Roland
Weisleder, Freiberufler @Ro_Wei #jaxcon
Java 6: November 2006
Java 6: November 2006 Java 7: Juli 2011
Java 6: November 2006 Java 7: Juli 2011 Java 8:
März 2014
Java 6: November 2006 Java 7: Juli 2011 Java 8:
März 2014 Java 9: September 2017
“The next train will leave on schedule.” Mark Reinhold Moving
Java Forward Faster https://mreinhold.org/blog/forward-faster
“Spring Data is an umbrella project consisting of independent projects
with, in principle, different release cadences. To manage the portfolio, a BOM (Bill of Materials) is published with a curated set of dependencies on the individual project.”
None
None
None
None
None
None
None
Dependency convergence error for org.slf4j:slf4j-api:jar:1.6.0:compile paths to dependency are: +-de.rweisleder:maven-release-train-talk-examples:jar:1.0-SNAPSHOT
+-org.slf4j:slf4j-jdk14:jar:1.6.0:compile +-org.slf4j:slf4j-api:jar:1.6.0:compile and +-de.rweisleder:maven-release-train-talk-examples:jar:1.0-SNAPSHOT +-org.slf4j:slf4j-nop:jar:1.6.1:compile +-org.slf4j:slf4j-api:jar:1.6.1:compile
None
Dependency convergence error for org.springframework:spring-context:jar:5.3.19:compile paths to dependency are: +-de.rweisleder:maven-release-train-talk-examples:jar:1.0-SNAPSHOT
+-org.springframework.boot:spring-boot-starter-web:jar:2.6.7:compile +-org.springframework.boot:spring-boot-starter:jar:2.6.7:compile +-org.springframework.boot:spring-boot:jar:2.6.7:compile +-org.springframework:spring-context:jar:5.3.19:compile and +-de.rweisleder:maven-release-train-talk-examples:jar:1.0-SNAPSHOT +-org.springframework:spring-context:jar:4.3.18.RELEASE:compile
None
Dependency convergence error for org.acme:io-utils:22.4:compile paths to dependency are: +-de.rweisleder:maven-release-train-talk-examples:jar:1.0-SNAPSHOT
+-org.acme:excel-export:jar:3.17.2:compile +-org.acme:io-utils:22.4:compile and +-de.rweisleder:maven-release-train-talk-examples:jar:1.0-SNAPSHOT +-org.acme:sap-connector:jar:1.0.1:compile +-org.acme:io-utils:22.1:compile
None
None
None
None
None
“The Maven Release Plugin is used to release a project
with Maven, saving a lot of repetitive, manual work.”
None
None
None
None
None
None
None
None
None
None
None
None
Customise the Maven Release Process https://maarten.mulders.it/2020/01/customise- the-maven-release-process/
None
None
None
None
None
None
Alles einsteigen! Einen eigenen Release Train mit Maven umsetzen Roland
Weisleder, Freiberufler @Ro_Wei #jaxcon
[email protected]