解决maven打包失败:程序包xxxx不存在问题

目录
  • 1.问题实质
  • 2.问题原因
  • 3.解决步骤
    • 解决方案1
    • 解决方案2
    • 解决方案3
    • 解决方案4

用Maven引入本地jar包这种做法非常不合理,很容易导致团队jar包混乱,最好尝试搭建私服解决。

1.问题实质

Maven仓库jar包下载失败或项目引入本地jar包Maven没有对应进行配置

2.问题原因

(1)因网络或其他原因导致Maven下载jar包到本地仓库失败

(2)项目引入本地jar包,只在编译器里进行了配置而没有在Maven中进行配置

3.解决步骤

(1)查看对应出错jar包的本地Maven仓库jar包是否下载完整

如果如上图所示将文件删掉重新下载即可。

(2)如果出现在编译器中可以找到jar包,但是用Maven打包报错:

就要查看一下项目是否引入本地jar包但Maven没有对其进行配置。

解决方案1

找到存放第三方jar包文件夹 (例如src/main/webapp/WEB-INF/lib)右键AddasLibrary加入项目运行库:

然后配置Maven打包插件扫描额外jar包

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <encoding>UTF-8</encoding>
        <compilerArgs>
            <arg>-verbose</arg>
            <arg>-Xlint:unchecked</arg>
            <arg>-Xlint:deprecation</arg>
            <arg>-bootclasspath</arg>
            <arg>${env.JAVA_HOME}/jre/lib/rt.jar</arg>
            <arg>-extdirs</arg>
            <arg>${project.basedir}/src/main/webapp/WEB-INF/lib</arg>
        </compilerArgs>
    </configuration>
</plugin>

其中${project.basedir}为项目根结点

图片引自:https://www.jb51.net/article/240010.htm,此方法多人尝试成功但笔者没有解决。

解决方案2

修改pom文件,引入依赖并且将scope设置为system

配置Maven打包插件

此方法亲测可行,但笔者引入的本地jar数量太多,一个一个写估计会累死。

解决方案3

将jar包安装至本地仓库后使用pom文件直接引入,进入需要引入的jar目录,执行以下命令

mvn install:install-file -Dfile=druid-1.1.4.jar -DgroupId=com.alibaba -DartifactId=druid -Dversion=1.1.4 -Dpackaging=jar

执行后在本地仓库中看到如下文件,说明安装成功

此方法亲测可行,理由同上,引入本地jar太多。

解决方案4

哪个模块找不到jar包就单独rebuild一下这个model,注意rebuild之后不要用maven的clean

rebuild完成之后再重新install

简单粗暴,方便快捷,非常适合维护老项目。新项目就别这么搞了,老老实实建私服吧。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 详解Maven多模块打包遇到的问题解决方法

    项目描述: springboot+springcloud+zookeeper+eureka+maven:为多模块多module的分布式架构: 项目目录结构如下 父工程为server工程,其中有多个子module工程: 1.独立子工程:db.model.quartz.redis.util.basecontroller: 2.独立功能模块:dao.service.controller: 其中dao.service.controller分别依赖db.model.quartz.redis.util.ba

  • IDEA解决Java:程序包xxxx不存在的问题

    前言 有时候我们在导入程序之后,系统会给出错误提示:Java:程序包xxxx不存在,现在我这里有一招,就是使用IDEA自动导入Java程序包,这也是IDEA的一大优点. 内容 当出现如题所示的错误时候,不用着急,这是因为配置Java的程序包这块出现了错误,同时可能你还没有设置让IDEA自动加载Jar包,才会报出这种错误的.解决方式如下: File->Setting->Build,Execution,Deployment->Maven->Importing 然后如下图配置: 如上图配

  • Maven install 报错"程序包不存在"问题的解决方法

    概述 在mvn clean install时,控制台各种报错,大概有: java:[8,52] 程序包com.xxx不存在 java:[98,27] 找不到符号 符号: 类 XXX 位置: 类XXX [ERROR] COMPILATION ERROR : Caused by: org.apache.maven.plugin.compiler.CompilationFailureException: Compilation failure  at org.apache.maven.plugin.c

  • 解决maven打包失败:程序包xxxx不存在问题

    目录 1.问题实质 2.问题原因 3.解决步骤 解决方案1 解决方案2 解决方案3 解决方案4 用Maven引入本地jar包这种做法非常不合理,很容易导致团队jar包混乱,最好尝试搭建私服解决. 1.问题实质 Maven仓库jar包下载失败或项目引入本地jar包Maven没有对应进行配置 2.问题原因 (1)因网络或其他原因导致Maven下载jar包到本地仓库失败 (2)项目引入本地jar包,只在编译器里进行了配置而没有在Maven中进行配置 3.解决步骤 (1)查看对应出错jar包的本地Mav

  • 解决pyinstaller打包运行程序时出现缺少plotly库问题

    用pyinstaller打包tkinter程序,打包后运行exe是报如下错误: 搜索一阵发现是pyinstaller在打包的时候(StartRun.py我要打包的主程序文件)可能会漏掉一些三方库,就在打包的时候加上三方库的绝对路径: pyinstaller StartRun.py -F -p C:\Python36\Lib\site-packages 发现打包完之后还是会报以上问题,继续搜索后用添加hook文件的方式可以解决(彻底解决了我的问题),修改方法: 1.找到C:\Python36\Li

  • maven install报错中程序包xxx不存在的问题解决

    目录 问题 解决 1.依赖未声明或者未下载成功 2.引用的是本地模块,但是未打包到本地maven仓库 3.父子项目包名不一致 注意事项 4.maven仓库路径不对 5.重启idea 6.清空target目录 问题 项目是springcloud项目,在maven install某一个项目时报错: 程序包com.example.commons.application不存在 解决 1.依赖未声明或者未下载成功 首先出现这个问题最常见的原因是jar包未引入,需要在pom中引入对应的jar包,其次检查这个

  • 解决Ubuntu下使用linuxdeployqt打包Qt程序问题

    写了点Qt界面程序,然而发现很难移植到其他没有安装Qt环境的电脑上运行.查资料了解到,在windows上有windowsdeployqt程序,linux上有linuxdeployqt可以帮助我们快速打包. 1. 配置Qt环境 首先,我们先把Qt环境配置好,在~/.bashrc中加入: export PATH=/home/xl/Qt5.9.2/5.9.2/gcc_64/bin:$PATH export LD_LIBRARY_PATH=/home/xl/Qt5.9.2/5.9.2/gcc_64/li

  • 解决flutter 错误: 程序包androidx.lifecycle不存在问题

    发生于编译时:错误: 程序包androidx.lifecycle不存在 先贴一段报错log,让你更加准确的匹配问题所在,对症下药,药,切克闹. D:\study\flutter\flutter\.pub-cache\hosted\pub.flutter-io.cn\flutter_plugin_android_lifecycle-1.0.8\android\src\main\java\io\flutter\embedding\engine\plugins\lifecycle\FlutterLif

  • 解决idea2020.1找不到程序包和符号的问题

    几种解决方法:idea 找不到 我下好idea2020.1和maven之后,在maven的setting.xml加上了localRepository修改仓库位置,然后在idea的setting里面设置maven地址为我修改到的那个地址**(这也是我以前在多台电脑上的做法,都没有出现过现在这种情况)**. 在使用idea2020.1版本创建maven项目编译时提示找不到程序包和符号之类的错误. 我试了网上很多解决办法,包括重新编译.设置编码.检查版本.检查maven等等.因为这些解决方式网上很多,

  • 打包FlaskAdmin程序时关于static路径问题的解决

    1.pyinstaller的使用 网上资料多,此处省略 2.打包时报错 1.可能有些包没有安装(跑跑程序不缺库就行) 2.有些包pyinstaller找不到? 打包时手动添加 --hidden-importMODULENAME,--hiddenimport MODULENAME 3.添加模板和静态文件 如果你使用的是flask-admin内部的模板,建议将其拷贝到工程对应路径(若不,打包后手动将文件拷贝过来也可以) 1.找到Flask-admin包下的templates.static文件(注意:

  • 解决程序包org.springframework.test.context不存在

    目录 程序包org.springframework.test.context不存在 Maven工程install时报错 解决办法 idea测试的时候程序包org.springframework.context不存在 1.把maven中配置文件settings.xml中自己加的localRepository删除 2.根据自己本地仓库的配置路径手动配置 3.刷新并重启 4.重启后需要刷新下工程 程序包org.springframework.test.context不存在 Maven工程install

随机推荐