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

IDEA的工程与模块管理

《IDEA破解、配置、使用技巧与实战教程》系列文章目录

第一章 IDEA破解与HelloWorld的实战编写
第二章 IDEA的详细设置
第三章 IDEA的工程与模块管理
第四章 IDEA的常见代码模板的使用
第五章 IDEA中常用的快捷键
第六章 IDEA的断点调试(Debug)
第七章 IDEA创建Java工程、Maven安装与建立工程、Web工程、Tomcat配置
第八章 IDEA关联数据库
第九章 IDEA常用插件_随时更新


文章目录

  • 《IDEA破解、配置、使用技巧与实战教程》系列文章目录
  • 一、 IDEA项目结构
  • 二、Project和Module的概念
  • 三、创建Module
  • 四、删除模块
  • 五、导入已有的模块
  • 五、为不同模块设置不同编码方案


一、 IDEA项目结构

层级关系:
project(工程) - module(模块) - package(包) - class(类)

具体的:
一个project中可以创建多个module,module一般放在工程文件夹中,切module可以选择自己的JDK。
一个module中可以创建多个package
一个package中可以创建多个class

注:这些结构的划分,是为了方便管理功能代码

如下图所示,新建一个模块后,可以在项目结构中的模块查看。这里一般把工程也可以当作一个大的模块。
在这里插入图片描述

二、Project和Module的概念

在 IntelliJ IDEA 中,提出了Project和Module这两个概念。(忽略下图涂鸦部分。)
在这里插入图片描述
在 IntelliJ IDEA 中Project是最顶级的结构单元,然后就是Module。目前,主流的大型项目结构基本都是多Module的结构,这类项目一般是按功能划分的,比如:user-core-module、user-facade-module和user-hessian-module等等,模块之间彼此可以相互依赖,有着不可分割的业务关系。因此,对于一个Project来说:

  1. 当为单Module项目的时候,这个单独的Module实际上就是一个Project。
  2. 当为多Module项目的时候,多个模块处于同一个Project之中,此时彼此之间具有关系。
  3. 当然多个模块没有建立依赖关系的话,也可以作为单独一个“小项目”运行。

三、创建Module

建议创建“Empty空工程”,然后创建多模块,每一个模块可以独立运行,相当于一个小项目。JavaSE阶段不涉及到模块之间的依赖。后期再学习模块之间的依赖。
步骤:
(1)选择创建模块
在这里插入图片描述
(2)选择模块类型:这里选择创建Java模块,给模块命名,确定存放位置
在这里插入图片描述

四、删除模块

(1)移除模块
在这里插入图片描述
(2)彻底删除模块
在这里插入图片描述

五、导入已有的模块

(1)将已有的模块整个的复制到自己IDEA项目的路径下,接着打开自己IDEA的项目,会在项目目录下看到拷贝过来的module,只不过不是以模块的方式呈现。
(2)查看Project Structure,选择import module
(3)选择要导入的module,即之前复制的那个文件夹。
(4)接着可以一路Next下去,最后选择Overwrite。

五、为不同模块设置不同编码方案

当前项目是UTF-8。如果原来的.java文件都是GBK的(如果原来.java文件有的是GBK,有的是UTF-8就比较
麻烦了)。可以单独把模块设置为GBK编码或者UTF-8,如下图所示。

在这里插入图片描述
在这里插入图片描述

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Laravel与现代前端:Vue.js与React的无缝集成
  • 如何定位Milvus性能瓶颈并优化
  • FPGA-ROM IP核的使用
  • 【数据结构】排序算法——Lessen1
  • 【味蕾盛宴】嘴尚绝健康与美味的完美融合
  • 服务器借助笔记本热点WIFI上网
  • 7月21日,贪心练习
  • 掌控视界:WebKit与CSS视口单位的卓越支持
  • 开源模型应用落地-FastAPI-助力模型交互-进阶篇-中间件(四)
  • 【LeetCode】对称二叉树
  • Android 10.0 Launcher3拖拽图标进入hotseat自适应布局功能实现一
  • pytorch 笔记:torch.optim(基类的基本操作)
  • 【Mode Management】ECU上下电过程CanSM为什么会多次设置CandTrcv和CanController模式
  • MySQL学习作业二
  • 计算机组成原理面试知识点总结1
  • 深入了解以太坊
  • 【面试系列】之二:关于js原型
  • 【前端学习】-粗谈选择器
  • android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码...
  • angular2 简述
  • JavaScript中的对象个人分享
  • Java精华积累:初学者都应该搞懂的问题
  • JS进阶 - JS 、JS-Web-API与DOM、BOM
  • Linux CTF 逆向入门
  • Netty 4.1 源代码学习:线程模型
  • Shadow DOM 内部构造及如何构建独立组件
  • vue自定义指令实现v-tap插件
  • 爱情 北京女病人
  • 基于Mobx的多页面小程序的全局共享状态管理实践
  • 可能是历史上最全的CC0版权可以免费商用的图片网站
  • 名企6年Java程序员的工作总结,写给在迷茫中的你!
  • 使用putty远程连接linux
  • Mac 上flink的安装与启动
  • 翻译 | The Principles of OOD 面向对象设计原则
  • 新海诚画集[秒速5センチメートル:樱花抄·春]
  • ​linux启动进程的方式
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • ​学习一下,什么是预包装食品?​
  • (19)夹钳(用于送货)
  • (C语言)求出1,2,5三个数不同个数组合为100的组合个数
  • (zt)最盛行的警世狂言(爆笑)
  • (动手学习深度学习)第13章 计算机视觉---微调
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (附源码)ssm考生评分系统 毕业设计 071114
  • (五)c52学习之旅-静态数码管
  • (一)Kafka 安全之使用 SASL 进行身份验证 —— JAAS 配置、SASL 配置
  • (一)utf8mb4_general_ci 和 utf8mb4_unicode_ci 适用排序和比较规则场景
  • (转)jQuery 基础
  • .NET 读取 JSON格式的数据
  • .NET开源纪元:穿越封闭的迷雾,拥抱开放的星辰
  • .NET中使用Redis (二)
  • .vollhavhelp-V-XXXXXXXX勒索病毒的最新威胁:如何恢复您的数据?
  • @Query中countQuery的介绍
  • @Repository 注解
  • @Slf4j idea标红Cannot resolve symbol ‘log‘