如何更好的管理maven依赖包的版本

1、如果你的pom.xml 文件内有很多相同的groupId(这现象spring等大型框架非常常见),你应该用pom中的properties部分,然后引用它们。

比如:

<properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target><maven.compiler.showWarnings>true</maven.compiler.showWarnings><maven.compiler.showDeprecation>true</maven.compiler.showDeprecation><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><commons-lang3.version>3.4</commons-lang3.version><commons-io.version>2.4</commons-io.version><commons-primitives.version>1.0</commons-primitives.version><spring.version>4.1.6.RELEASE</spring.version><spring-asm.version>3.1.4.RELEASE</spring-asm.version><spring-security-web.version>4.0.0.RELEASE</spring-security-web.version><cglib.verson>3.1</cglib.verson><logback-classic.version>1.1.3</logback-classic.version><log4j.version>1.2.17</log4j.version><slf4j-api.version>1.7.12</slf4j-api.version></properties><dependencyManagement><dependencies><dependency><groupId>org.springframework</groupId><artifactId>spring-framework-bom</artifactId><version>${spring.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><dependencies><dependency><groupId>org.opencredo.esper</groupId><artifactId>esper-template</artifactId><version>2.1</version><exclusions><exclusion><groupId>com.espertech</groupId><artifactId>esper</artifactId></exclusion><exclusion><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId></exclusion><exclusion><groupId>org.springframework</groupId><artifactId>spring-context</artifactId></exclusion></exclusions></dependency><dependency><groupId>com.espertech</groupId><artifactId>esper</artifactId><version>5.2.0</version><exclusions><exclusion><artifactId>log4j</artifactId><groupId>log4j</groupId></exclusion><exclusion><artifactId>commons-logging</artifactId><groupId>commons-logging</groupId></exclusion></exclusions></dependency><dependency><groupId>com.alibaba</groupId><artifactId>fastjson</artifactId><version>1.1.43</version></dependency><dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>18.0</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>${commons-lang3.version}</version></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>${commons-io.version}</version></dependency><dependency><groupId>commons-primitives</groupId><artifactId>commons-primitives</artifactId><version>${commons-primitives.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><exclusions><exclusion><artifactId>commons-logging</artifactId><groupId>commons-logging</groupId></exclusion></exclusions></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aspects</artifactId></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-asm</artifactId><version>${spring-asm.version}</version></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.0.14</version></dependency><dependency><groupId>postgresql</groupId><artifactId>postgresql</artifactId><version>9.1-901-1.jdbc4</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>${slf4j-api.version}</version></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId><version>${logback-classic.version}</version></dependency><dependency><groupId>ch.qos.logback</groupId><artifactId>logback-core</artifactId><version>${logback-classic.version}</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>jcl-over-slf4j</artifactId><version>${slf4j-api.version}</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>log4j-over-slf4j</artifactId><version>${slf4j-api.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId></dependency><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.11</version><scope>test</scope></dependency></dependencies>2、可视化观察依赖关系

现在的ide,,比如spring官方的sts,就自带了可视化查看依赖。

当你开展的事业从事的行动穷途末路大势已去的时候,

如何更好的管理maven依赖包的版本

相关文章:

你感兴趣的文章:

标签云: