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

IDEA中的Project工程、Module模块的概念及创建导入

1、IDEA中的层级关系:

    project(工程) - module(模块) - package(包) - class(类)/接口

具体的:

    一个project中可以创建多个module一个module中可以创建多个package一个package中可以创建多个class/接口

2、Project和Module的概念:

在这里插入图片描述

在 IntelliJ IDEA 中Project是 最顶级的结构单元 ,然后就是Module。目前,主流的大型项目结构基本都是多Module的结构,这类项目一般是 按功能划分 的,比如:user-core-module、user-facade-module和user-hessian-module等等。模块之间彼此可以 相互依赖 ,有着不可分割的业务关系。因此,对于一个Project 来说:

  • 当为单Module项目的时候,这个单独的Module实际上就是一个Project。
  • 当为多Module项目的时候,多个模块处于同一个Project之中,此时彼此之间具有互相依赖 的关联 关系。
  • 当然多个模块没有建立依赖关系的话,也可以作为单独一个“小项目”运行。
    建议创建“Empty空工程”,然后创建多模块

3、创建Project:

在这里插入图片描述
在这里插入图片描述
这样就创建好了:

这样就创建好了:
如果我们选择的是创建空工程的话:

在这里插入图片描述
就会是这样的效果:

在这里插入图片描述

4、创建Module:

在这里插入图片描述
你可以把本身的工程就看作是一个模块!!我们可以在工程下面直接写具体的代码,但是我们通常都是创建空工程,然后创建Module,在Module中写具体的代码:

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

5、删除Module:

删除Moudle分为两步:(1)移除模块
在这里插入图片描述
remove后:

在这里插入图片描述
module02文件夹现在还存在:
在这里插入图片描述
在这里插入图片描述
(2)彻底删除模块:

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

现在磁盘中也没有了:

在这里插入图片描述

6、导入Module:

想把另一个工程的某个模块导入到我自己的工程下面来,作为一个module存在,该怎么办呢:

第一步:
在这里插入图片描述
第二步:

    将老师的模块 teacher_chapter04 整个的复制到自己IDEA项目的路径下:

在这里插入图片描述

在这里插入图片描述
注意,现在只是一个普通的文件夹!!!!

第三步:

    接着打开自己IDEA的项目,会在项目目录下看到拷贝过来的module,只不过不是以模块的方式呈现:只是一个普通的文件夹

在这里插入图片描述
第三步:

    接着打开自己IDEA的项目,会在项目目录下看到拷贝过来的module,只不过不是以模块的方式呈现:只是一个普通的文件夹

在这里插入图片描述
第四步: 查看Project Structure,选择import module

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
第五步: 接着可以一路Next下去,最后选择Overwrite

在这里插入图片描述
在这里插入图片描述
第六步: 现在在工程目录中已经呈现为一个module了,成功导入进来了:

在这里插入图片描述
最后点击OK即可了。

7、导入Module时的中文乱码问题:

我们项目的整体结构采用的是UTF-8编码:

在这里插入图片描述
但是如果我们导入的模块中, 那个模块里的类采用的是别的编码方式,如GBK编码,那我们就要采用”一国两制“制度,即整体项目的编码为utf-8,但是那个单独的模块采用GBK编码:

在这里插入图片描述
打开其中各个源文件,会发现有乱码。比如:

在这里插入图片描述
单独把这个模块设置为GBK编码的:

在这里插入图片描述
单独对这个模块使用GBK:

在这里插入图片描述

8、工程中的JDK配置情况:

查看当前工程的结构:
在这里插入图片描述
在这里插入图片描述
如果你的电脑里还有其他版本的JDK,你可以选择➕添加:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

9 导入的modul转换为mven 项目

1.首先对比一下普通项目和maven项目的pom.xml文件的区别

在这里插入图片描述
2.将普通的项目转为maven项目
只需右键pom.xml选择add as maven project
在这里插入图片描述
3.看一下改变后的效果
在这里插入图片描述

相关文章:

IDEA中的Project工程、Module模块的概念及创建导入

1、IDEA中的层级关系: project(工程) - module(模块) - package(包) - class(类)/接口具体的: 一个project中可以创建多个module一个module中可以创建多个package一个package中可以创建多个class/接口2、Project和Module的概念: 在 IntelliJ …...

如何快速下载并剪辑B站视频

1、B站手机端右上角缓存视频; 2、在手机文件管理助手中找到android/data/80找到两个文件,video.m4s和audio.m4s,将它们发送到电脑,系统会默认保存在你的个人文件夹里,C:\users\用户名 3、下载ffmepg https://blog.cs…...

智慧矿山新趋势:大数据解决方案一览

1. 背景 随着信息技术的快速发展和矿山管理需求的日益迫切,智慧矿山作为一种创新的矿山管理方式应运而生。智慧矿山借助先进的信息技术,实现对矿山生产、管理、安全等各方面的智能化、高效化、协同化,是矿山行业转型升级的必然趋势。 欢迎关…...

Ubuntu使用Docker部署Nginx容器并结合内网穿透实现公网访问本地服务

目录 ⛳️推荐 1. 安装Docker 2. 使用Docker拉取Nginx镜像 3. 创建并启动Nginx容器 4. 本地连接测试 5. 公网远程访问本地Nginx 5.1 内网穿透工具安装 5.2 创建远程连接公网地址 5.3 使用固定公网地址远程访问 ⛳️推荐 前些天发现了一个巨牛的人工智能学习网站&#…...

面试笔记——Redis(使用场景、面临问题、缓存穿透)

Redis的使用场景 Redis(Remote Dictionary Server)是一个内存数据结构存储系统,它以快速、高效的特性闻名,并且它支持多种数据结构,包括字符串、哈希表、列表、集合、有序集合等。它主要用于以下场景: 缓…...

电机学(笔记一)

磁极对数p: 直流电机的磁极对数是指电机定子的磁极对数,也等于电机电刷的对数。它与电机的转速和扭矩有直接关系。一般来说,极对数越多,电机转速越低,扭矩越大,适用于低速、高扭矩的场合;相反&…...

数值分析复习:Newton插值

文章目录 牛顿(Newton)插值引入背景插值条件基函数插值多项式差商差商的基本性质差商估计差商的Leibniz公式 余项估计 本篇文章适合个人复习翻阅,不建议新手入门使用 牛顿(Newton)插值 引入背景 Lagrange插值每引入一…...

金融知识分享系列之:出场信号RSI指标

金融知识分享系列之:出场信号RSI指标 一、出场信号RSI指标二、RSI指标原理三、 指标用法四、RSI指标总结 一、出场信号RSI指标 名称:相对强弱指标参数:(默认14)组成:RSI线以及30轴、50轴、70轴构成 0-30是极弱:0-30的…...

基于Spring Boot的宿舍管理系统

摘 要 随着信息时代的来临,过去的传统管理方式缺点逐渐暴露,对过去的传统管理方式的缺点进行分析,采取计算机方式构建宿舍管理系统。本文通过课题背景、课题目的及意义相关技术,提出了一种楼宇信息、宿舍信息、宿舍安排、缺勤信息…...

全量知识系统“全基因序列”程序构想及SmartChat的回复

感觉上,全量知识系统的程序起点基本确定。下一步就是程序了。程序的整个设计过程都准备同时使用两个AI工具。以下是和“百度AI”同步进行的Q&A。 Q1. 基本假设:“全基因序列”中“基因”的本质是联结collection。 做法是: 对给出的一个…...

315晚会曝光主板机产业链,如何应对工作室技术更迭

近日,央视315晚会开播,曝光了一批最新案例,聚焦消防、食品、金融、数据等多个领域。其中 “网络黑灰产”硬件设备「手机主板机」及其产业链暴露在大众视野。 手机主板机实物丨图源:央视财经 据报道,主板机的构造是将数…...

Copilot with GPT-4与文心一言4.0:AI技术的未来

Copilot with GPT-4的深度分析 Copilot with GPT-4是基于OpenAI的GPT-4模型,它是一个多功能的AI助手,能够在多种语言中进行交流和创作。GPT-4模型的强大之处在于其庞大的数据训练基础,这使得它在理解语境、生成文本以及执行复杂任务方面表现…...

注册-前端部分

前提:后端jar环境、Vue3环境、Redis环境 搭建页面(html标签、css样式) → 绑定数据与事件(表单校验) → 调用后台接口(接口文档、src/api/xx.js封装、页面函数中调用) Login.vue文件&#xff…...

SpringBoot ApplicationListener实现发布订阅模式

文章目录 前言一、Spring对JDK的扩展二、快速实现发布订阅模式 前言 发布订阅模式(Publish-Subscribe Pattern)通常又称观察者模式,它被广泛应用于事件驱动架构中。即一个事件的发布,该行为会通过同步或者异步的方式告知给订阅该事件的订阅者。JDK中提供…...

嵌入式学习40-数据结构

数据结构 1.定义 一组用来保存一种或者多种特定关系的 数据的集合(组织和存储数据) 程序的设计: …...

k8s集群部署elk

一、前言 本次部署elk所有的服务都部署在k8s集群中,服务包含filebeat、logstash、elasticsearch、kibana,其中elasticsearch使用集群的方式部署,所有服务都是用7.17.10版本 二、部署 部署elasticsearch集群 部署elasticsearch集群需要先优化…...

【Python】清理conda缓存的常用命令

最近发现磁盘空间不足,很大一部分都被anaconda占据了,下面是一些清除conda缓存的命令 清理所有环境的Anaconda包缓存 删除所有未使用的包以及缓存的索引和临时文件 conda clean --all清理某一特定环境的Anaconda包缓存 conda clean --all -n 环境名清…...

代码随想录算法训练营第46天 | 完全背包,139.单词拆分

动态规划章节理论基础: https://programmercarl.com/%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html 完全背包理论基础: https://programmercarl.com/%E8%83%8C%E5%8C%85%E9%97%AE%E9%A2%98%E7%90%86%E8%AE%BA%E5%9…...

rust - 将windows剪贴板的截图保存为png

本文提供了将windows系统的截图另存为png格式图片的方法。 添加依赖 cargo add clipboard-win cargo add image cargo add windows配置修改windows依赖特性 [dependencies] image "0.25.0"[target.cfg(windows).dependencies] windows "0.51.1" clipb…...

pyflink1.18.0 报错 TypeError: cannot pickle ‘_thread.lock‘ object

完整报错 Traceback (most recent call last):File "/Users//1.py", line 851, in <module>ds1 = my_datastream.key_by(lambda x: x[0]).process(MyProcessFunction()) # 返回元组即: f0 f1 f2 三列File "/Users/thomas990p/bigdataSoft/minicondaarm/…...

uniapp 对接腾讯云IM群组成员管理(增删改查)

UniApp 实战&#xff1a;腾讯云IM群组成员管理&#xff08;增删改查&#xff09; 一、前言 在社交类App开发中&#xff0c;群组成员管理是核心功能之一。本文将基于UniApp框架&#xff0c;结合腾讯云IM SDK&#xff0c;详细讲解如何实现群组成员的增删改查全流程。 权限校验…...

Linux 文件类型,目录与路径,文件与目录管理

文件类型 后面的字符表示文件类型标志 普通文件&#xff1a;-&#xff08;纯文本文件&#xff0c;二进制文件&#xff0c;数据格式文件&#xff09; 如文本文件、图片、程序文件等。 目录文件&#xff1a;d&#xff08;directory&#xff09; 用来存放其他文件或子目录。 设备…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来

一、破局&#xff1a;PCB行业的时代之问 在数字经济蓬勃发展的浪潮中&#xff0c;PCB&#xff08;印制电路板&#xff09;作为 “电子产品之母”&#xff0c;其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透&#xff0c;PCB行业面临着前所未有的挑战与机遇。产品迭代…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八

现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet&#xff0c;点击确认后如下提示 最终上报fail 解决方法 内核升级导致&#xff0c;需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

微信小程序 - 手机震动

一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注&#xff1a;文档 https://developers.weixin.qq…...

1.3 VSCode安装与环境配置

进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件&#xff0c;然后打开终端&#xff0c;进入下载文件夹&#xff0c;键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...

如何为服务器生成TLS证书

TLS&#xff08;Transport Layer Security&#xff09;证书是确保网络通信安全的重要手段&#xff0c;它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书&#xff0c;可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...

第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词

Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵&#xff0c;其中每行&#xff0c;每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid&#xff0c;其中有多少个 3 3 的 “幻方” 子矩阵&am…...

人机融合智能 | “人智交互”跨学科新领域

本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...