boholder / boholder.github.io

BoHolder's site: about my crafts,thought,etc Powered by [Hugo], theme is [hugo MemE]
4 stars 0 forks source link

blogs/maven-build-advance/ #6

Open utterances-bot opened 1 year ago

utterances-bot commented 1 year ago

用Maven reactor命令行选项节约build时间 | BoHolder的网站:博客,小玩意及其他

微服务开发下的build困扰 前提:Java开发,Maven做依赖管理,JetBrains IntelliJ IDEA做IDE 在Java微服务开发下,项目开发结构(repo)可能有两种: 所有模块(maven module),包括服务(Spring Application)和自己开发的依赖模块,都塞在一

https://boholder.github.io/blogs/maven-build-advance/

boholder commented 1 year ago

这个文章说的是只修改代码不修改maven module 的情况。 怎么说呢,终究是依赖本地maven仓库来协作的,build就是更新仓库。 如果改依赖的代码还要变版本号,就要更麻烦地去更新所有dependent的pom文件中这个依赖的版本号。

关于自动更新pom文件中版本号,还好已经有人写了工具了: https://plugins.jetbrains.com/plugin/11261-maven-dependency-updater

boholder commented 1 year ago

如果在加了--projects参数后Maven报 could not find the selected project in the reactor ,给传入做参数的模块加上groupId:如app-1 -> org.example:app-1

boholder commented 1 year ago

https://www.uber.com/en-JP/blog/devpod-improving-developer-productivity-at-uber/ Uber用一个repo管理全公司的所有代码,但是他们用了远程开发环境来避免在笔记本上(从各种资源的角度)维持这个庞大的项目。

boholder commented 1 year ago

Java开发,如果不喜欢“在分支上开发时突然要切到另一个分支看问题,需要git stash, build等等上下文切换,很麻烦”,试试在本地clone两份项目,这样一个开发一个看问题,互相不影响target目录,很方便。

boholder commented 1 year ago

Conway's law is an adage that states organizations design systems that mirror their own communication structure. https://en.wikipedia.org/wiki/Conway%27s_law