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

[Maven]IDEA父工程创建子工程后父工程不可运行

    IDEA在使用maven构建项目时,如果你在当前工程下创建一个子工程,那么原有的工程(变为父工程的工程)原有的代码通常会变得不可运行。

    这是因为,使用maven创建父子工程关系后,IDEA会自动变更项目的模块相关配置。

    比如这是我maven工程原本的项目结构和其设置:

    可以看到,当前我的项目还是可以运行的,Main.java被标记为蓝色的class文件。 

    我们在mavenText2项目下面创建一个子工程,然后我们原有的代码就不可以运行了,且它的标记变成了咖啡图标:

    

    这个其实就是简单的IDEA使用方面的知识了。

    先回到项目一块来讲,比如一个JavaWeb项目,这是它的包结构:

    Maven中父子工程之间,可以简单地看成是项目与分包的关系。以刚刚的maven项目例子为例,父工程就是我们展示的这个JavaWeb项目的根目录,而下面的一个个子工程就是"src"和"web"次一级分包,这里用另一个更恰当的词:模块。

    比如这个JavaWeb的前端模块就是web,后端模块是src (当然,往后肯定会遇到更加复杂的分包和模块设置。

    IDEA在你创建子工程之后,父工程就默认为类似根目录的存在。项目的根目录会直接放运行代码么?不会,所以原本父工程的src的包就被当成无意义了,然后IDEA会自动更改你的模块设置。

    比如,这是创建子工程前的项目结构:

     这是创建了子工程之后的项目结构:

    可以看到我们的源文件夹和编译输出包都被删了 (模块的设置,文件没有被删)。

    在此之前,小伙伴们在Java项目下面创建普通的Java项目还未出现过该情况,maven是则不是,会自动修改相关设置。

    修改模块设置属于IDEA使用范畴的相关知识,而之所以改动模块设置,是因为maven构建项目的定义有关,一个父工程中是一个个子工程,而整个项目的运行代码,会在一个子工程当中,而不是父工程。

相关文章:

[Maven]IDEA父工程创建子工程后父工程不可运行

IDEA在使用maven构建项目时,如果你在当前工程下创建一个子工程,那么原有的工程(变为父工程的工程)原有的代码通常会变得不可运行。 这是因为,使用maven创建父子工程关系后,IDEA会自动变更项目的模块相关配置。 比如这是我maven工程…...

【系统移植】在开发板上加载内核和根文件系统的三种方法

实现环境:ubuntu24.04和FS4412实验平台。 要在开发板上运行linux操作系统,首先要将linux内核镜像(uImage)、设备树(dexynos4412-fs4412.dtb)和根文件系统镜像(ramdisk.img)加载到开发板内存。有以下几种方式加载: 一、通过tftp加载内核和根文件系统 二、通过EMMC加…...

#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍02-基于错误消息的SQL注入(Error-Based SQL Injection)

免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停…...

数据结构-排序(来自于王道)

排序的基本概念 插入排序 在这个算法中,除了输入的数组本身,没有使用额外的数据结构来存储数据,所有的操作都是在原数组上进行的。因此,无论输入数组的大小 n 是多少,算法执行过程中所占用的额外空间是固定的&#xff…...

【蓝桥杯选拔赛真题93】Scratch青蛙过河 第十五届蓝桥杯scratch图形化编程 少儿编程创意编程选拔赛真题解析

目录 Scratch青蛙过河 一、题目要求 编程实现 二、案例分析 1、角色分析 2、背景分析 3、前期准备 三、解题思路 1、思路分析 2、详细过程 四、程序编写 五、考点分析 六、推荐资料 1、入门基础 2、蓝桥杯比赛 3、考级资料 4、视频课程 5、python资料 Scr…...

ReactPress最佳实践—搭建导航网站实战

Github项目地址:https://github.com/fecommunity/easy-blog 欢迎Star。 近期,阮一峰在科技爱好者周刊第 325 期中推荐了一款开源工具——ReactPress,ReactPress一个基于 Next.js 的博客和 CMS 系统,可查看 demo站点。(…...

Hive-4.0.1数据库搭建(可选配置用户名密码远程连接)

1.官网下载tar包上传到服务器并解压&#xff08;我这里解压到了hive目录): 2.进入到conf目录&#xff0c;并复制模板配置文件进行修改&#xff1a; cd /apache-hive-4.0.1-bin/conf cp hive-default.xml.template hive-site.xml3.编写内容如下&#xff1a; <property>&…...

P8772 求和 P8716 回文日期

文章目录 [蓝桥杯 2022 省 A] 求和[蓝桥杯 2020 省 AB2] 回文日期 [蓝桥杯 2022 省 A] 求和 题目描述 给定 n n n 个整数 a 1 , a 2 , ⋯ , a n a_{1}, a_{2}, \cdots, a_{n} a1​,a2​,⋯,an​, 求它们两两相乘再相加的和&#xff0c;即 S a 1 ⋅ a 2 a 1 ⋅ a 3 ⋯ a…...

MySQL迁移SQLite

将 MySQL 的表结构和数据迁移到 SQLite&#xff0c;可以通过以下步骤实现。这个过程主要包括导出 MySQL 数据库到 SQL 文件&#xff0c;然后将其导入到 SQLite 数据库中。 步骤 1: 导出 MySQL 数据库 首先&#xff0c;需要将 MySQL 数据库导出为一个 SQL 文件。可以使用 mysq…...

RocketMQ中的顺序消息和乱序消息详解

内容编辑中… 1.背景 顺序消息是消息队列 RocketMQ 提供的一种高级消息类型。 对于一个指定的Topic,消息严格按照先进先出(FIFO)的原则进行消息发布和消费。 即先发送的消息先消费,后发送的消息后消费。 顺序消息在发送、存储和投递的处理过程中,强调多条消息间的先后…...

Unity UGUI图片循环列表插件

效果展示&#xff1a; 下载链接&#xff1a;https://gf.bilibili.com/item/detail/1111843026 概述&#xff1a; LoopListView2 是一个与 UGUI ScrollRect 相同的游戏对象的组件。它可以帮助 UGUI ScrollRect 以高效率和节省内存的方式支持任意数量的项目。 对于具有10,000个…...

Kafka系列教程 - Kafka 生产者 -2

1. 生产者简介 不管是把 Kafka 作为消息队列系统、还是数据存储平台&#xff0c;总是需要一个可以向 Kafka 写入数据的生产者和一个可以从 Kafka 读取数据的消费者&#xff0c;或者是一个兼具两种角色的应用程序。 使用 Kafka 的场景很多&#xff0c;诉求也各有不同&#xff…...

AI Chat API 对接说明

AI Chat API 对接说明 我们知道&#xff0c;市面上一些问答 API 的对接还是相对没那么容易的&#xff0c;比如说 OpenAI 的 Chat Completions API&#xff0c;它有一个 messages 字段&#xff0c;如果要完成连续对话&#xff0c;需要我们把所有的上下文历史全部传递&#xff0…...

Thread线程基础使用

多线程目的&#xff1a;其实就是希望“并行”执行多任务&#xff0c;提升效率。 单核多线程基于时间片轮询 并发而非并行 线程最大数等于cpu核心数为佳 namespace thinger.ThreadDemo {class Program{//主线程static void Main(string[] args){Console.WriteLine("这个…...

【Linux】结构化命令

结构化命令structured command&#xff1a;允许脚本根据条件跳过部分命令&#xff0c;改变执行流程。 1、if-then语句 格式1&#xff1a; if command then commands fi 格式2&#xff1a; if command; then commands fi 运行if之后的command命令&#xff0c;如果它的退出状态码…...

ElasticSearch01-概述

零、文章目录 ElasticSearch01-概述 1、Elastic Stack &#xff08;1&#xff09;简介 官网地址&#xff1a;https://www.elastic.co/cn/ELK是一个免费开源的日志分析架构技术栈总称&#xff0c;包含三大基础组件&#xff0c;分别是Elasticsearch、Logstash、Kibana。但实际…...

docker xxxx is using its referenced image ea06665f255d

Error response from daemon: conflict: unable to remove repository reference “registrxxxxxx” (must force) - container 9642fd1fd4a0 is using its referenced image ea06665f255d 这个错误表明你尝试删除的镜像正在被一个容器使用&#xff0c;因此无法删除。要解决这…...

Vue 2 中 v-text 和 v-html 指令的使用详解

目录 Vue 2 中 v-text 和 v-html 指令的使用详解 v-text 指令 简介 基本语法 示例 1&#xff1a;基础用法 特点 v-html 指令 简介 基本语法 示例 2&#xff1a;基础用法 注意事项 区别与选择指南 何时使用 最佳实践 Vue 2 中 v-text 和 v-html 指令的使用详解 V…...

高级Python游戏开发:创建一款多人对战坦克大战

在本教程中,我们将用Python的Pygame库开发一款高级的坦克大战游戏。这款游戏支持多人对战、碰撞检测、子弹射击以及地图障碍生成,适合作为学习Python高级游戏开发的练习项目。 一、游戏功能概述 多人对战模式:玩家可以操作坦克,在同一屏幕上互相攻击。子弹射击:坦克可以发…...

数据结构_拓扑排序

拓扑排序 &#xff08;所有点按照先后顺序排序&#xff09; 1.先找到入度为0的点&#xff0c;记录之后&#xff0c;删除这个点和它的出边&#xff1b; 2.若有两个可选&#xff0c;随便选择一个 例 a的入度为0,选a [a] 随便选一个 [a,e] 再找入度为0的点 再选c 最后选d 拓…...

STM32H7驱动AD7606实战:从硬件连接到代码调试,搞定8路并行数据采集

STM32H7驱动AD7606实战&#xff1a;从硬件连接到代码调试&#xff0c;搞定8路并行数据采集 在工业测量、医疗设备和自动化测试系统中&#xff0c;多通道高精度数据采集一直是工程师面临的挑战。AD7606作为一款16位8通道同步采样ADC&#xff0c;以其出色的性能和稳定性成为众多…...

从状态机视角理解程序:形式化方法如何保证复杂系统正确性

1. 从数学视角审视程序&#xff1a;为什么我们需要形式化思维在软件开发的日常里&#xff0c;我们常常埋头于代码的细节&#xff1a;这个循环边界对不对&#xff1f;那个指针会不会为空&#xff1f;这个API调用返回错误该怎么处理&#xff1f;我们依赖编译器、静态分析工具、单…...

uView 2.0插件开发指南:如何扩展自定义组件与工具函数

uView 2.0插件开发指南&#xff1a;如何扩展自定义组件与工具函数 【免费下载链接】uView2.0 uView UI&#xff0c;是全面兼容nvue的uni-app生态框架&#xff0c;全面的组件和便捷的工具会让您信手拈来&#xff0c;如鱼得水 项目地址: https://gitcode.com/gh_mirrors/uv/uVi…...

AI系统6%误差率为何触发链式崩溃?生产级监控实战指南

1. 项目概述&#xff1a;当6%的失误率成为系统性风险的临界点“The 6% Problem: Why AI Safety Monitoring Isn’t Optional Anymore”这个标题乍看像一篇科技评论&#xff0c;但在我过去十年参与过27个AI系统落地项目&#xff08;涵盖金融风控、医疗辅助诊断、工业质检、政务智…...

终极指南:5分钟让Switch手柄在Windows上完美运行

终极指南&#xff1a;5分钟让Switch手柄在Windows上完美运行 【免费下载链接】BetterJoy Allows the Nintendo Switch Pro Controller, Joycons and SNES controller to be used with CEMU, Citra, Dolphin, Yuzu and as generic XInput 项目地址: https://gitcode.com/gh_mi…...

工业 CAN 通信利器!六通道隔离集线器,中继滤波稳组网

工业 CAN 总线距离受限、速率不匹配、数据拥堵、故障难排查&#xff1f;三格电子SG-CanHub-600 六通道 CAN 集线器&#xff0c;工业级隔离中继&#xff0c;信号再生 智能滤波&#xff0c;轻松解决 CAN 网络通信难题&#xff01;⚙️ 硬核实力&#xff0c;工业通信强支撑✅ 六通…...

数据安全合规实战:等保2.0和GDPR要求下的文件加密配置清单

从“过等保”到“过审计”&#xff0c;一份可直接照抄的配置模板又到了每年合规审计季。去年我们公司同时面临等保2.0三级复测和欧盟客户要求的GDPR合规审查&#xff0c;其中文件加密是两者共同的重点项。我们以天锐绿盾为基础&#xff0c;整理了一套加密合规配置清单&#xff…...

Gitea库完整从Ubuntu迁移到CentOS中

文章目录 一、概述 二、数据迁移 2.1 获取数据存储路径 2.2 搞事之前先备份(目标服务器CentOS) 2.2.1 停止gitea服务 2.2.2 备份gitea文件夹 2.3 从Ubuntu的数据目录中将数据拷贝到CentOS中 2.4 备份mysql数据库并拷贝到目标服务器(CentOS) 2.4.1 通过mysqldump备份数据库 …...

Netlify CLI 部署完全指南:从零到生产环境的10个步骤

Netlify CLI 部署完全指南&#xff1a;从零到生产环境的10个步骤 【免费下载链接】cli Netlify Command Line Interface 项目地址: https://gitcode.com/gh_mirrors/cli16/cli Netlify CLI 是一款功能强大的命令行工具&#xff0c;能帮助开发者轻松实现从本地开发到生产…...

如何快速实现 CoffeeScript 实时编译和预览:vim-coffee-script 终极指南 [特殊字符]

如何快速实现 CoffeeScript 实时编译和预览&#xff1a;vim-coffee-script 终极指南 &#x1f680; 【免费下载链接】vim-coffee-script CoffeeScript support for vim 项目地址: https://gitcode.com/gh_mirrors/vi/vim-coffee-script 对于 CoffeeScript 开发者来说&am…...