程序包 applets.user.service.UserService 不存在-2022新项目
一、问题由来
接上一篇文章使用maven进行打包时报中文乱码错误,经过多次尝试后最终解决问题,显示出真正的错误信息如下:
程序包 applets.user.service.UserService 不存在
找不到符号20
因为工作原因,包名有改动,可是错误信息是一模一样的。看到这个真实的错误信息后,才搞清楚错误提示信息。自己
的代码中存在的问题是有一个公共模块中所有的类,其他模块都不能正常引入。写代码的时候可以导入,可是在将模块
进行打包的时候,就报了上面的错,让人费解。
二、问题分析
可以确定的一点是,公共模块可以打成jar包,自己也去自己的本地仓库中查看了打包后的信息,发现都没有问题,
打好的jar包在仓库中放着,其他说明文件也都有。就类似于下面这种,只有正确的打成jar包后,其他项目才能够引用。

公共模块打成的包没问题,可是其他模块却不能引入公共模块,这就很奇怪?自己立马开始搜索问题的答案,然后尝试各种解决办法,
因为只有解决这个这个问题,项目才能够正常启动,如果这一步都没有解决,那么其他的什么都别谈了。
三、解决方案
尝试方式一:
执行命令进行清理
mvn -U idea:idea
问题未解决.
https://blog.csdn.net/qq_39246334/article/details/109393354
尝试方式二:
清除idea缓存,然后重启IDEA 问题未解决;
开启自动加载jar包,问题未解决;
import快速导入,问题任然未解决。
https://www.cnblogs.com/lodalo/p/13678274.html
尝试方式三:
配置Maven的一些信息 问题未解决
https://blog.csdn.net/lzzdhhhh/article/details/105907772
尝试方式四:
单独使用命令清理IDEA插件 问题未解决
https://www.jianshu.com/p/47a058d15ec1
尝试方式五:
说是设置下载依赖包的源码 这听起来有些扯淡 CSDN干的事 还是未解决
https://blog.csdn.net/m0_49573573/article/details/121680390
自己在此期间也看了很多的其他博文,然后开始分析自己遇到的问题。
自己的项目 A 下面有三个子模块 B/C/D,C是抽取的公共模块,供其他模块调用。打包时,C模块可以正常打包,
可是其他模块依赖C模块的B/D打包时,报错。自己在打包时仔细看输出日志,打第一个模块C的jar包时,如果不添加任何配置,则报错
unable to find main class意思是找不到启动类。解决这个问题后,接着就出现上面的问题,可以打包了,可是其他项目不能引用C模块,
报错程序包xxx不存在找不到符号。后来了解到编译、打包插件有两类,一类是maven自带你的,一类是spring-boot集成的。
自己去看了以往开发的项目,在公共模块中,根本就没有引入 spring-boot-maven-plugin 这个依赖。公共模块打成jar包仅仅是提供给其他模块调用,
其本身并不会启动项目。了解到这点后,自己尝试着搜索,模块中如何排除 spring-boot-maven-plugin 依赖,找到一篇博文,在C模块中添加配置如下,
<build>
<!-- war、jar的名称 -->
<finalName>${artifactId}-${version}</finalName>
<plugins>
<!-- 编译插件 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
然后重新导入maven配置,重新打包,问题解决。
问题解决,之后搜索的时候发现还有一篇博文和我遇到类似的问题,参考 https://www.cnblogs.com/xiadongqing/p/12979764.html
之后的几个模块都采用这种方式进行处理,完全可行。
程序包 applets.user.service.UserService 不存在-2022新项目的更多相关文章
- VS2013中Nuget程序包管理器控制台使用入门(三)-项目实战(原创)
VS2013中Nuget程序包管理器控制台使用入门(三)-项目实战 1.给指定项目安装Newtonsoft.Json ,Version 4.5.11 PM> Install-Package Ne ...
- 用命令行工具创建 NuGet 程序包
NuGet.exe 下载地址 本文翻译自: https://docs.nuget.org/Create/Creating-and-Publishing-a-Package https://docs.n ...
- VS2013中Nuget程序包管理器控制台使用入门(二)-如何使用Nuget提供的帮助(原创)
如何使用Nuget提供的帮助? 1.从get-help Nuget开始,键入“get-help NuGet”以查看所有可用的 NuGet 命令. 用法: PM> get-help Nuget 主 ...
- VS NuGet加载本地程序包
NuGet是VS中非常实用的一个工具,我们可以通过它在线安装想要的程序包,只要右键点击解决方案中的项目的引用,在弹出的菜单中选择“管理NuGet程序包”,然后就可以通过在线搜索找到想要添加的程序包,下 ...
- Nuget包管理工具(程序包控制台执行语句)
NUGET命令 注:使用前确保nuget是最新版本,升级到最新版本有两种方式: (1).CMD将nuget升级到最新版本:nuget update -self (2).扩展中查看nuget是否需要更新 ...
- 十六、程序包管理之 rpm
c语言程序的构建过程 1.程序源代码 --> 预处理 --> 编译 --> 汇编 --> 链接--> 可执行程序 开放源码:就是程序码,文本格式的源代码,写给人类看的程序 ...
- 错误: 程序包com.sun.istack.internal不存在
eclipse下maven打包是出现如下错误: [ERROR] D:\code-old\daba_user_mvn\src\main\java\com\dada\transaction\service ...
- 解决xp下无法通过windows installer服务安装此安装程序包。您必须安装带有更新版本Wi
今天装 tortoisegit 的时候发现安装包不能使用.报错无法通过windows installer服务安装此安装程序包.您必须安装带有更新版本Windows Installer服务的Window ...
- 安装psacct或acct程序包
监视Linux用户活动 我认为,对每个想密切监视其服务器/系统上用户活动的Linux/Unix系统管理员来说,psacct或acct是优秀的.必需的应用程序之一. psacct或acct程序包提供了用 ...
随机推荐
- 如何将springboot工程打包成war包并且启动
将项目打成war包,放入tomcat 的webapps目录下面,启动tomcat,即 可访问. 1.pom.xml配置修改 <packaging>jar</packaging> ...
- 快速注册service服务
一.通过SpringContextHolder的getBean来注册service服务 导入的包:import com.bessky.platform.context.SpringContextHol ...
- Three.js 实现3D开放世界小游戏:阿狸的多元宇宙 🦊
声明:本文涉及图文和模型素材仅用于个人学习.研究和欣赏,请勿二次修改.非法传播.转载.出版.商用.及进行其他获利行为. 背景 2545光年之外的开普勒1028星系,有一颗色彩斑斓的宜居星球 ,星际移民 ...
- Linux基础学习 | gcc、g++的安装和使用
安装gcc 1.apt-get命令是debain Linux发新版的APT软件包管理工具. dabian.ubuntu.deepin等Linux系统通过以下命令: 安装gcc:Shell输入sudo ...
- 手把手教你撸个vue2.0弹窗组件
手把手教你撸个vue2.0弹窗组件 在开始之前需要了解一下开发vue插件的前置知识,推荐先看一下vue官网的插件介绍 预览地址 http://haogewudi.me/kiko/inde... 源码地 ...
- 我的python学习记_01
一切的开始都是从打招呼开始的,python也不例外,首先和将要陪伴我后半生的朋友说句情话: print("不是在最美好的时光遇见你,而是因为遇见你才让我有了最美好的时光") 初写代 ...
- python-班级人员信息统计
输入a,b班的名单,并进行如下统计. 输入格式: 第1行::a班名单,一串字符串,每个字符代表一个学生,无空格,可能有重复字符.第2行::b班名单,一串字符串,每个学生名称以1个或多个空格分隔,可能有 ...
- for循环打印九九乘法表
学习目标: 熟练掌握 for 循环的使用 例题: 需求:打印九九乘法表 代码如下: // 九九乘法表 // row 为行,col为列 for(int row = 1; row < 10; row ...
- QGIS源码编译步骤详解——官方新方案
目录 源码下载 环境下载 Cygwin64 OSGeo4W CMAKE Visual Studio 2017 环境配置 配置 编译 方案详细可见源码文件中INSTALL.md. 源码下载 QG ...
- mpvue下拉刷新
1 开启下拉刷新 在想要下拉刷新的页面的 main.json 里,添加: { "navigationBarTitleText": "页面标题", "e ...