无报错,但是就是 无法 使用 lombok 的类。 发现classpath 里面也的确没有lombok jar包。
最后把json 的 version 属性加上 就正常了。
结论: 不加version有时候不报错,但是会导致后面的jar包无法引入(也不报错),继而导致命名引入了jar包,却无法使用。
maven什么情况可以不写版本?批量引入jar包?
两种方式:
1. 定义parent ,通过parent 统一管理jar包版本,则子项目中可以不用写jar包版本,如spring-boot-starter-parent。
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>3.3.0</version> </parent>
2. 大多数情况我们都需要使用自己的parent。 这个时候可以定义 dependencyManangement (仅定义声明jar包,不直接引入。 dependencies会直接引入)。
</dependencyManagement> </dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>3.3.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>
packaging 为pom 是parent的项目专有的类型,只有pom.xml有用。