当前位置: 首页 > news >正文

解决springboot项目中的groupId、package或路径的混淆问题

对于像我一样喜欢跳跃着学习的聪明人来说,肯定要学springboot,什么sevlet、maven、java基础,都太老土了,用不到就不学。所以古代的聪明人有句话叫“书到用时方恨少”,测试开源项目时,编译总是报错,不是缺依赖就是少java类,pom中除了会填依赖项,其他全都看不懂,项目跑不起来就得赶紧找老师补习maven。

有一个困扰已久的问题,都快遗忘了,看反编译的java项目时,jar包里的路径是按什么结构生成的?学了maven教程,仔细对比源码路径和jar包里的目录结构,发现我把groupId、package和源码路径混为一谈了。

1、package 包名和groupId可以不一致,groupId是maven引入依赖时检索的名称,package 包名是java程序中import的名称。两者作用域不同,groupId是maven定义的,package 是java定义的。 2、默认情况下源码的路径与包名相同,打包后的路径项目与源码的路径相同 但是如果源码的路径与包名不同,打包后的路径以包名为准,与源码路径不同

p01-maven-java-1.0-SNAPSHOT.jar中的路径:

源码的路径:

//Calculator.java中的包名是 package com.atguigu.maven;

package com.atguigu.maven;public class Calculator {public int sum(int i, int j){return i + j;}}

//p01-maven-java-1.0-SNAPSHOT.pom中的groupId是com.jlrc.maven

<groupId>com.jlrc.maven</groupId>
<artifactId>p01-maven-java</artifactId>
<version>1.0-SNAPSHOT</version>

编译打包后,Calculator类在jar包中的路径是com.atguigu.maven

源码文件Calculator.java的路径是p01-maven-java\src\main\java\com\jlrc\maven

可用看出打包后包中类的路径是由package com.atguigu.maven;决定的,

而maven仓库中包存放的路径是由pom文件中的groupId\artifactId\version决定的。

只不过一般情况下,groupId、package和源码路径都设置成一样的,在idea创建maven项目时groupId和package的默认设置就是相同的,而且自动创建的源码路径和package一样,所以平时没发现他们的区别。

尚硅谷Maven教程(maven入门+高深,全网无出其右!)_哔哩哔哩_bilibili

相关文章:

解决springboot项目中的groupId、package或路径的混淆问题

对于像我一样喜欢跳跃着学习的聪明人来说&#xff0c;肯定要学springboot&#xff0c;什么sevlet、maven、java基础&#xff0c;都太老土了&#xff0c;用不到就不学。所以古代的聪明人有句话叫“书到用时方恨少”&#xff0c;测试开源项目时&#xff0c;编译总是报错&#xff…...

Vmware 网络恢复断网和连接

如果你的 虚拟机无法联网了&#xff0c;比如&#xff1a; vmware 无法将网络更改为桥接状态: 没有未桥接的主机网络适配器 等各种稀奇古怪的问题&#xff1b; 按照下面操作 还远默认设置 包你解决各种问题&#xff01;...

学生来看!如何白嫖内网穿透?点进来!

文章目录 前言本教程解决的问题是&#xff1a;按照本教程方法操作后&#xff0c;达到的效果是前排提醒&#xff1a; 1 搭建虚拟机1.1 下载文件vmvare虚拟机安装包1.2 安装VMware虚拟机&#xff1a;1.3 解压虚拟机文件1.4 虚拟机初始化1.5 没有搜索到解决方式&#xff1a;1.6 虚…...

C++中的stack和queue

文章目录 1. stack的介绍和使用1.1 stack的介绍1.2 stack的使用 2. queue的介绍和使用2.1 queue的介绍2.2 queue的使用 3 priority_queue的介绍和使用3.1 priority_queue的介绍3.2 priority_queue的使用 4. 容器适配器4.1 什么是适配器4.2 STL标准库中stack和queue的底层结构4.…...

Ubuntu-22.04通过RDP协议连接远程桌面

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、RDP是什么&#xff1f;二、配置1.打开远程桌面功能2.验证服务3.防火墙配置4.测试效果 总结 前言 由于一些特殊需要&#xff0c;我需要通过远程桌面连接到U…...

20230908java面经整理

1.cpp和java的区别 cpp可以多重继承&#xff0c;对表java中的实现多个接口 cpp支持运算符重载、goto、默认函数参数 cpp自动强转&#xff0c;导致不安全&#xff1b;java必须显式强转 java提供垃圾回收机制&#xff0c;自动管理内存分配&#xff0c;当gc要释放无用对象时调用f…...

uniapp 开发App 网络异常如何处理

我对该问题思考的不是很清楚&#xff0c;目前只想到了基本的解决方案 第一、客户端的网络异常&#xff08;断网&#xff09; 1. 断网情况 一定要弹出信息提示&#xff0c;目前最好的解决方式就是在uni.request封装的统一方法中写提示 //1. 封装的网络请求 async function se…...

docker安装常用软件

Linux系统安装docker请参考&#xff1a;https://mp.csdn.net/mp_blog/creation/editor/128176825 docker安装mysql 1、拉镜像&#xff1a;docker pull mysql:8.0.26 2、创建数据目录&#xff1a; mkdir -p /mnt/data/mysql/data mkdir -p /mnt/data/mysql/logs mkdir -p /mn…...

CocosCreator3.8研究笔记(五)CocosCreator 脚本说明及使用(下)

在Cocos Creator中&#xff0c;脚本代码文件分为模块和插件两种方式&#xff1a; 模块一般就是项目的脚本&#xff0c;包含项目中创建的代码、引擎模块、第三方模块。 插件脚本&#xff0c;是指从 Cocos Creator 属性检查器中导入的插件&#xff0c;一般是引入第三方引入库文件…...

Adobe Acrobat Reader界面改版 - 解决方案

问题 日期&#xff1a;2023年9月 Adobe Acrobat Reader下文简称Adobe PDF Reader&#xff0c;此软件会自动进行更新&#xff0c;当版本更新至2023.003.20284版本后。 软件UI界面会大改版&#xff1a;书签页变成了右边、工具栏变到了左边、缩放按钮变到了右下角&#xff0c;如…...

实用调试技巧(2)

文章目录 6. 如何写出好&#xff08;易于调试&#xff09;的代码6.1 优秀的代码&#xff1a;6.2 示范&#xff1a;6.3 const的作用 7. 编程常见的错误7.1 编译型错误7.2 链接型错误7.3 运行时错误 附&#xff1a; 6. 如何写出好&#xff08;易于调试&#xff09;的代码 6.1 优…...

海外ASO优化之如何优化游戏应用

如果我们发布了一款手机游戏或者管理了一款手机游戏&#xff0c;那么需要确保我们的手机游戏对合适的人可见&#xff0c;目的是增加应用的下载量。 1、优化游戏元数据的关键词。 Apple和Google在应用商店中为我们提供有限的空间&#xff0c;来描述手机游戏及其优势。我们需要使…...

SpringMVC: Java Web应用开发的框架之选

引言 在当今的软件开发领域中&#xff0c;Web应用的需求不断增长。为了满足这种需求&#xff0c;各种Web框架应运而生。其中&#xff0c;SpringMVC作为一种优秀的Java Web框架&#xff0c;受到广泛关注和使用。本文将以文章的形式给您讲解SpringMVC的重要概念、工作原理和核心…...

【华为设备升级】AR路由器升级设备软件示例

升级设备软件示例 通过介绍设备升级的具体步骤&#xff0c;帮助用户顺利完成系统设备升级。 组网需求 设备当前系统软件版本已经不能满足用户需要&#xff0c;用户需要更大的规格和部署更多的特性&#xff0c;此时用户需要对系统软件进行升级。 如图1所示&#xff0c;网络中的某…...

Dataset 的一些 Java api 操作

文章目录 一、使用 Java API 和 JavaRDD<Row> 在 Spark SQL 中向数据帧添加新列二、foreachPartition 遍历 Dataset三、Dataset 自定义 Partitioner四、Dataset 重分区并且获取分区数 一、使用 Java API 和 JavaRDD 在 Spark SQL 中向数据帧添加新列 在应用 mapPartition…...

Vue + Element UI 前端篇(十一):第三方图标库

Vue Element UI 实现权限管理系统 前端篇&#xff08;十一&#xff09;&#xff1a;第三方图标库 使用第三方图标库 用过Elment的同鞋都知道&#xff0c;Element UI提供的字体图符少之又少&#xff0c;实在是不够用啊&#xff0c;幸好现在有不少丰富的第三方图标库可用&…...

HDFS:Hadoop文件系统(HDFS)

Hadoop文件系统&#xff08;HDFS&#xff09;是一个分布式文件系统&#xff0c;主要用于存储和处理大规模的数据集。HDFS是Apache Hadoop的核心组件之一&#xff0c;能够支持上千个节点的集群&#xff0c;并能够处理PB级别的数据。 HDFS将大文件切割成小的数据块&#xff08;默…...

SpringMvc--综合案例

目录 1.SpringMvc的常用注解 2.参数传递 基础类型&#xff08;String&#xff09; 创建一个paramController类&#xff1a; 创建一个index.jsp 测试结果 复杂方式 ​编辑 测试结果 RequestParam 测试结果 PathVariable 测试结果 RequestBody pom.xml依赖导入 输…...

工业4.0时代生产系统对接集成优势,MES和ERP专业一体化管理-亿发

在现代制造业中&#xff0c;市场变化都在不断加速。企业面临着不断加强生产效率、生产质量和快速适应市场需求的挑战。在制造行业&#xff0c;日常管理中的ERP系统、MES系统就显得尤为重要。越来越多的企业正在采用MES系统和ERP管理系统的融合&#xff0c;以实现智能化生产管理…...

IT运维监控系统和网络运维一样吗

IT运维监控系统和网络运维不是一样的。IT运维监控系统是一系列IT管理产品的统称&#xff0c;它所包含的产品功能强大、易于使用、解决方案齐全&#xff0c;可一站式满足用户的各种IT管理需求。而网络运维是指对网络设备进行监控、维护和管理&#xff0c;包括硬件故障的排除、软…...

7yuv调试神器+RGA组合拳:快速定位GStreamer解码数据异常区域

7yuv调试神器与RGA组合拳&#xff1a;高效解决NV12解码数据异常问题 在视频处理开发中&#xff0c;经常会遇到解码后的NV12数据出现异常区域&#xff08;如绿边、花屏&#xff09;的情况。这不仅影响视觉效果&#xff0c;还可能导致后续处理算法失效。本文将介绍如何利用7yuv可…...

虚拟内存 pagefile.sys 安全迁移教程|释放 3~8GB

摘要Windows 系统默认将虚拟内存&#xff08;pagefile.sys&#xff09;存放在 C 盘&#xff0c;长期占用 3~8GB 系统盘空间&#xff0c;不仅会加剧 C 盘爆满问题&#xff0c;还会增加磁盘读写压力&#xff0c;影响系统运行性能。本文整理 官方原生、安全无毒、无需第三方工具 的…...

ASPICE 的起源与发展历程(二)

ASPICE 并非汽车行业原生创造&#xff0c;其核心底层源自通用软件过程评估体系&#xff0c;是汽车行业基于自身高安全、高可靠的产业特性&#xff0c;定制化迭代的行业专属标准。&#xff08;一&#xff09;底层起源&#xff1a;通用SPICE 准的诞生1994 年&#xff0c;国际标准…...

2026年,江北高档 KTV 哪个好玩?这份实测推荐别错过!

2026 年&#xff0c;想在江北找个高档又好玩的 KTV 可不容易。其实&#xff0c;深海公馆娱乐会所就凭借多年行业经验&#xff0c;成了很多人的心头好。接下来&#xff0c;我就给大家分享一些 KTV 选择的干货。说实话&#xff0c;很多人去 KTV 都踩过不少坑。比如有些 KTV 装修看…...

SillyTavern终极指南:如何构建沉浸式AI角色聊天体验

SillyTavern终极指南&#xff1a;如何构建沉浸式AI角色聊天体验 【免费下载链接】SillyTavern LLM Frontend for Power Users. 项目地址: https://gitcode.com/GitHub_Trending/si/SillyTavern 想要创建栩栩如生的AI角色对话体验吗&#xff1f;SillyTavern作为专为高级用…...

如何安全高效地烧录系统镜像?Balena Etcher带来无忧体验

如何安全高效地烧录系统镜像&#xff1f;Balena Etcher带来无忧体验 【免费下载链接】etcher Flash OS images to SD cards & USB drives, safely and easily. 项目地址: https://gitcode.com/GitHub_Trending/et/etcher 你是否曾因误操作将系统镜像写入电脑硬盘而丢…...

终极指南:REFramework - 让RE引擎游戏体验焕然一新的完整解决方案

终极指南&#xff1a;REFramework - 让RE引擎游戏体验焕然一新的完整解决方案 【免费下载链接】REFramework REFramework 是 RE 引擎游戏的 mod 框架、脚本平台和工具集&#xff0c;能安装各类 mod&#xff0c;修复游戏崩溃、卡顿等问题&#xff0c;还有开发者工具&#xff0c;…...

大麦抢票神器:3步轻松实现演唱会门票自动化抢购终极指南

大麦抢票神器&#xff1a;3步轻松实现演唱会门票自动化抢购终极指南 【免费下载链接】ticket-purchase 大麦自动抢票&#xff0c;支持人员、城市、日期场次、价格选择 项目地址: https://gitcode.com/GitHub_Trending/ti/ticket-purchase 还在为抢不到心仪演唱会门票而烦…...

如何快速上手BepInEx:3个高效秘诀解锁Unity游戏插件开发

如何快速上手BepInEx&#xff1a;3个高效秘诀解锁Unity游戏插件开发 【免费下载链接】BepInEx Unity / XNA game patcher and plugin framework 项目地址: https://gitcode.com/GitHub_Trending/be/BepInEx 想象一下&#xff0c;你心爱的Unity游戏缺少某个功能&#xff…...

SDMatte效果可视化对比:传统U-Net抠图 vs SDMatte+,玻璃反光/薄纱透光细节放大评测

SDMatte效果可视化对比&#xff1a;传统U-Net抠图 vs SDMatte&#xff0c;玻璃反光/薄纱透光细节放大评测 1. 评测背景与目标 在电商设计、影视后期和平面制作领域&#xff0c;高质量图像抠图一直是刚需。传统U-Net架构虽然能完成基础的主体分离&#xff0c;但在处理玻璃器皿…...