`
li370604005
  • 浏览: 46775 次
  • 性别: Icon_minigender_1
  • 来自: 盐城
社区版块
存档分类
最新评论

关于maven使用中重复jar包问题解决

阅读更多

        这个问题很尴尬,一开始以为*.pom文件中配置的

<dependencies>

     <dependency>

     </dependency>

</dependencies>

就是所要下载和导入的jar包以及对maven了解的不多。

 

出现问题是因为这样的一个例子

在*.pom文件中已经有了:

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.2</version>
</dependency>

slf4j的一个jar包。

同时还有一个:

<dependency>
<groupId>displaytag</groupId>
<artifactId>displaytag</artifactId>
<version>1.2</version>
</dependency>

的一个jar包。源都是在 search.maven.org中搜索的。

       在后者的包中还存在了一个poslf4j 1.4.2版本的一个jar包。这样就导致了有重复的jar包,致使启动时出现了找不到类似slf4j.jar的异常,由于有2个,系统不知道该如何选择,所以还是提示说找不到。

之前的解决方法都是用工程的build path 删除那个1.4.2的jar包。

但是每次又从svn下载下来的时候或者用maven更新jar包后还是会出现如上的问题。

然后就想这个问题一定也常见,就百度一下。

解决方案如下:

<dependency>
	<groupId>displaytag</groupId>
		<artifactId>displaytag</artifactId>
		<version>1.2</version>
		<exclusions>
			<exclusion>
				<groupId>org.slf4j</groupId>
				<artifactId>jcl104-over-slf4j</artifactId>
			</exclusion>
			<exclusion>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-log4j12</artifactId>
			</exclusion>
		</exclusions>
</dependency>

 在其中添加<exclusions><exclusion></exclusion></exclusions>即可排除重复的jar包。百度还说这个slf4j包在很多SSH中很多都包含,如果版本控制不好,则会出现如下问题。当然在search.maven.org中去搜索的jar也有一定的问题,选择还说靠经验。

       最后有个疑问想请大神给个答案!!!!毕竟我找这个重复的jar是通过注释一一去排查,有没有什么更方便快捷的解决方案。?

分享到:
评论

相关推荐

    Maven中主要jar包集合

    本文将深入探讨"Maven中主要jar包集合"这一主题,旨在帮助初学者理解Maven的工作原理以及如何利用它来高效地管理jar包。 首先,我们要明白什么是Maven。Maven是Apache软件基金会开发的一个项目管理和综合工具,主要...

    maven仓库 jar包

    在Java开发中,Maven仓库是一个至关重要的组成部分,它存储了大量的jar包,这些包包含了各种预编译的类和库,使得开发者无需从零开始构建项目。Maven仓库分为本地仓库、中央仓库和远程仓库,其中"maven-repository...

    maven本地仓库jar包

    "maven本地仓库jar包"指的是在Maven项目中使用的各种库文件,以.jar格式存储在用户的本地仓库中。本地仓库是Maven系统的一个重要组成部分,它缓存了从远程仓库下载的依赖,以便于重复使用和快速构建。 Maven使用一...

    maven jar包下载器.zip

    在Java开发过程中,Maven是一个不可或缺的工具,它是一个项目管理框架,可以帮助开发者管理和构建Java项目。Maven通过使用一个项目...如果你在Java开发中遇到频繁的jar包管理问题,这样的工具将是一个很好的解决方案。

    MAVEN通过URL下载jar

    在Java开发中,Maven帮助开发者管理和构建项目,它有一个中央仓库,包含了大量第三方库的jar包,但同时,我们也可以自定义配置,从互联网上的任何URL下载所需的依赖。 **Maven的介绍** Maven是Apache软件基金会的一...

    springboot编译jar包后无法扫描子jar包中的注解解决方法

    ### Spring Boot 编译 JAR 包后无法扫描子 JAR 包中的注解解决方案 在使用Spring Boot进行项目开发时,我们经常会遇到模块化的需求,即一个大型项目被拆分成多个子模块来提高可维护性和灵活性。这些子模块可能通过...

    使用gradle下载jar包,和maven原理类似,直接利用gradle copyJars下载

    Gradle和Maven是两种广泛使用的构建工具,它们都提供了便捷的方式来下载并管理项目所需的外部库,如jar包。本篇文章将详细探讨如何使用Gradle下载jar包,以及它与Maven在处理依赖上的相似之处。 首先,让我们了解...

    weblogic部署项目jar冲突解决

    标题"weblogic部署项目jar冲突解决"指出的核心问题是JAR包冲突。这是因为不同的应用服务器可能内置了不同版本的库,或者在类加载机制上有差异,导致原本在Tomcat上运行良好的应用在WebLogic上出现问题。以下是一些...

    关于Myeclipse使用mybatis出现Jar包冲突的解决办法

    本文将针对"关于Myeclipse使用mybatis出现Jar包冲突的解决办法"这一主题,详细解释如何解决这类问题。 首先,我们需要理解为什么会出现Jar包冲突。在MyEclipse中,可能由于内置的库或插件与我们手动引入的库之间...

    你们想要的java jar包全都有

    在"压缩包子文件的文件名称列表"中提到的"框架jar包",这意味着这个压缩包内可能包含了各种Java框架的JAR文件。Java框架如Spring、Hibernate、Struts、Apache CXF、Play Framework等,都提供了自己的JAR包,以简化...

    SSH整合jar包,彻底解决集成jar包冲突问题

    5. **合理组织类加载器**:在应用服务器如Tomcat中,可以通过调整类加载策略,比如使用`WEB-INF/classes`优先加载,避免不同模块重复引入的jar包产生冲突。 6. **使用jar包管理工具**:例如,使用FatJar或者One-Jar...

    maven_package 依赖包(完整)

    在POM中声明所需依赖,Maven会根据设定的坐标(groupId、artifactId、version)从Maven中央仓库或其他指定的远程仓库下载对应的jar包。例如,`&lt;dependency&gt;`标签用于声明项目依赖,`&lt;dependencies&gt;`标签则用于包含...

    maven项目如何依赖自定jar包

    Maven提供了`&lt;dependency&gt;`标签来声明项目所依赖的库,但针对不在Maven仓库中的jar包,我们需要使用`&lt;systemPath&gt;`元素来指定jar包的本地路径。下面是一个示例配置: ```xml ... ... &lt;groupId&gt;...

    Maven使用.pdf

    例如,如果我们需要在项目中使用commons-fileupload库,Maven会首先识别这个依赖,然后自动下载commons-fileupload库本身以及它所依赖的commons-io库。这意味着开发者无需手动添加每一个依赖,大大提高了开发效率。 ...

    Maven jar包冲突的解决方案

    Maven jar包冲突的解决方案 Maven 是一个流行的 Java 项目管理和构建工具,它提供了许多有用的功能,例如依赖管理、项目构建和项目依赖关系管理等。但是,在使用 Maven 进行项目开发时,经常会遇到 jar 包冲突的...

    Maven的基础概念及使用

    通过配置 Maven,可以使用大量的工具和 jar 包,并可以解决以下一些问题: 1. 导入 Jar 包:Maven 可以解决 jar 包之间的依赖关系,自动将当前 jar 包所依赖的其他所有 jar 包全部导入进来,无需人工参与。 2. 将...

    工程中jar包管理工具---ivy

    "工程中jar包管理工具---ivy"的出现,就是为了有效地解决这个问题。Ivy是一个由Apache Ant项目维护的依赖管理工具,它允许开发者以声明式的方式管理项目所依赖的外部库,从而实现对JAR包的高效管理。这个工具的引入...

    jar包大乱炖

    为了解决这个问题,开发者需要确保所有必要的jar包都在项目构建路径中,并且在运行或编译时被正确加载。这里提到的“打开文件搜索”是一种实用的方法,通过工具或命令行,如`jar tf &lt;jar_file&gt;`,可以查看jar包内的...

    jar包2jar包2jar包2jar包2jar包2

    标题中的“jar包2jar包2jar包2jar包2jar包2”可能是在强调jar包的重要性或者表示这是一个关于处理多个jar包的问题。描述中的重复同样表明了与jar包相关的主题,但没有提供具体细节,可能是涉及到jar包的合并、打包、...

    Maven知识.pdf

    Maven的出现解决了这一痛点,通过“坐标”系统,将jar包统一管理在本地仓库,需要使用时,项目中只需引用jar包坐标即可,Maven自动下载所需的jar包到本地仓库中,这样既节省了存储空间,又避免了版本冲突和文件混乱...

Global site tag (gtag.js) - Google Analytics