idea修改模块名导致程序编译出错

本文简单描述分别用Idea菜单、pom.xml文件管理项目模块module

踩过的坑:

通过idea菜单创建模块,并用idea菜单修改模块名,结构程序编译报错,出错的代码莫名奇妙。双击maven弹窗clean时,还是报错。因为模块是新建的,只有两个controller函数,非常简单,感觉是改模块名时,idea把某些配置信息改了,出现编译问题。

困惑过后,冷静思考,idea只是高级编辑器,界面上的所有修改,都应该固化到项目文件中。

以创建模块module为例:

①向导窗口中填写的模块名称yudao-module-app会写入新建模块的pom.xml文件中

 实际上idea界面中的模块名称取自该模块下的pom.xml中的name字段(一般与artifactId相同):

<artifactId>yudao-module-app222</artifactId>

......

<name>yudao-module-app</name>

 证明:当通过idea界面修改模块名称时,pom.xml中的artifactId字段会同步改变。

注:但是修改pom.xml的artifactId字段时,idea界面显示的模块名称不会同步修改

而且模块名与路径名要同步修改,否则maven会报错

IDEA重命名一个模块(详细说明)_compiler.xml-优快云博客文章浏览阅读1w次,点赞11次,收藏49次。最精准无误地修改idea的模块名!_compiler.xmlhttps://blog.youkuaiyun.com/xiaoyouyouaaa/article/details/122729353?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168506388216782425116170%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=168506388216782425116170&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-1-122729353-null-null.142%5Ev88%5Econtrol_2,239%5Ev2%5Einsert_chatgpt&utm_term=idea%E6%A8%A1%E5%9D%97%E9%87%8D%E5%91%BD%E5%90%8D%E9%97%AE%E9%A2%98&spm=1018.2226.3001.4187https://blog.youkuaiyun.com/xiaoyouyouaaa/article/details/122729353?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168506388216782425116170%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=168506388216782425116170&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-1-122729353-null-null.142%5Ev88%5Econtrol_2,239%5Ev2%5Einsert_chatgpt&utm_term=idea%E6%A8%A1%E5%9D%97%E9%87%8D%E5%91%BD%E5%90%8D%E9%97%AE%E9%A2%98&spm=1018.2226.3001.4187https://blog.youkuaiyun.com/xiaoyouyouaaa/article/details/122729353?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168506388216782425116170%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=168506388216782425116170&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-1-122729353-null-null.142%5Ev88%5Econtrol_2,239%5Ev2%5Einsert_chatgpt&utm_term=idea%E6%A8%A1%E5%9D%97%E9%87%8D%E5%91%BD%E5%90%8D%E9%97%AE%E9%A2%98&spm=1018.2226.3001.4187https://blog.youkuaiyun.com/xiaoyouyouaaa/article/details/122729353?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168506388216782425116170%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=168506388216782425116170&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-1-122729353-null-null.142%5Ev88%5Econtrol_2,239%5Ev2%5Einsert_chatgpt&utm_term=idea%E6%A8%A1%E5%9D%97%E9%87%8D%E5%91%BD%E5%90%8D%E9%97%AE%E9%A2%98&spm=1018.2226.3001.4187老鸟提示:新建模块时,命名要遵守规范,因为修改module名称很麻烦,创建后少修改。

②idea创建模块时,会将新建模块名称写入父模块pom.xml文件中:

<modules>
        <module>yudao-dependencies</module>
        <module>yudao-framework</module>
        <!-- Server 主项目 -->
        <module>yudao-server</module>
        <!-- 各种 module 拓展 -->
        <module>yudao-module-system</module>
        <module>yudao-module-infra</module>

        <module>yudao-module-app</module> 
        <!-- 由idea创建的模块,idea自动将模块名加入父项目的pom.xml中 -->
</modules>

注:通过idea菜单删除模块时,父模块pom.xml中的注册信息不会自动删除。

删除模块后,父模块pom.xml中定义的<module>yudao-module-app</module>会爆红

③项目根路径下的.idea目录(被git忽略)中,有maven相关配置:

注:.idea目录中的文件是由idea管理的,不建议手动编辑,可以在IDEA界面编辑

IntelliJ IDEA: What Is the .idea Folder and How to Manage It - BootcampToProdLearn about the .idea folder in IntelliJ IDEA, its purpose, content, and best practices. This blog post will explain how to configure, ignore, share, andhttps://bootcamptoprod.com/intellij-idea-folder/https://bootcamptoprod.com/intellij-idea-folder/https://bootcamptoprod.com/intellij-idea-folder/

How to Configure the .idea Folder?

如何配置 .idea 文件夹?

The .idea folder is automatically generated and updated by IntelliJ IDEA based on the project structure and the user actions. We do not need to manually edit the files inside the .idea folder, as this can cause errors or inconsistencies. Instead, we can use the IDE’s graphical user interface (GUI) to configure the project settings and preferences.

 .idea 文件夹由 IntelliJ IDEA 根据项目结构和用户操作自动生成和更新。我们不需要手动编辑 .idea 文件夹内的文件,因为这可能会导致错误或不一致。相反,我们可以使用 IDE 的图形用户界面(GUI)来配置项目设置和首选项。

To access the project settings, we can go to File -> Project Structure or press Ctrl+Alt+Shift+S. On macOS shortcut is Command+; This will open a dialog window where we can adjust various options, such as:

要访问项目设置,可以转到 “File” -> “Project Structure” 或按 Windows 上的 Ctrl+Alt+Shift+S。在 macOS 上的快捷键是 Command+;。这将打开一个对话框窗口,我们可以在其中调整各种选项,例如:

  • Project SDK and language level
  • Project compiler output path
  • Modules and dependencies
  • Libraries and global libraries
  • Artifacts and build tools
  • And more

To access the preferences, we can go to File -> Settings or press Ctrl+Alt+S on windows OS. On macOS, we can go to Intellij IDEA -> Settings or press Command+, .This will open another dialog window where we can customize various options, such as:

要访问首选项,可以转到 “File” -> “Settings” 或在 Windows 操作系统上按 Ctrl+Alt+S。在 macOS 上,可以转到 “IntelliJ IDEA” -> “Preferences” 或按 Command+,。这将打开另一个对话框窗口,我们可以在其中自定义各种选项,例如:

  • Editor settings, such as code style, fonts, colors, inspections, etc.
  • Plugins and marketplace
  • Version control settings, such as VCS integration, commit options, branches, etc.
  • Tools settings, such as terminal, database, HTTP client, etc.
  • And more

We can also use the search bar at the top of the dialog windows to quickly find the option we are looking for. 

我们还可以在对话框窗口顶部的搜索栏中使用搜索功能,快速找到我们正在寻找的选项。

IntelliJ Idea Project Structure

设置-》编译器-》排除配置,idea界面与compiler.xml文件对应关系

 项目结构-》项目-》sdk 配置(jdk版本),idea界面与compiler.xml文件对应关系

 设置-》构建、执行、部署-》构建工具-》Maven-》已忽略的文件 配置对应关系:

 我发现.idea目录中的配置文件更新不及时,解决办法:涉及模块、目录结构的项目框架,少改!

idea右边栏maven配置中,子模块是否显示与根pom.xml中<module>标签的关系:

注释 <module>yudao-module-member</module> 并刷新maven(点击蓝色m按键)后,右边栏maven菜单中yudao-module-member子模块不再显示

### DeepSeek Coder 插件功能与使用 DeepSeek Coder 是一种先进的开发辅助工具,旨在通过集成多种智能化服务来提升开发者的工作效率。此插件支持多平台环境下的代码编写优化,特别是对于那些希望提高生产力并减少重复劳动的程序员来说非常有用。 #### 主要特点: - **智能感知**:提供上下文敏感的帮助,在编辑器中自动完成语句、显示参数信息以及建议可能的方法调用[^1]。 - **即时反馈**:当检测到潜在错误时立即通知用户,并给出修正方案;这有助于防止常见编程失误的发生. - **版本控制集成功能**:允许无缝地管理源码变更历史记录,简化团队协作流程中的冲突解决过程. - **跨语言兼容性**:不仅限于单一编程语言的支持范围,而是广泛适用于各种主流程序设计范式下所使用的不同类型的脚本或编译型语言. - **扩展性强**:可以通过安装额外模块的方式增强原有能力,比如增加特定领域专用函数库或是改进现有算法实现方式等操作都变得轻而易举. 为了更好地理解如何利用这些特性,请参阅下面的具体应用场景实例说明: ```python # 假设正在处理Python项目 def example_function(param): """这是一个简单的例子""" # 使用DeepSeek Coder可以快速获取param的相关文档解释及其常用值域分布情况 result = param * 2 return result ``` 上述代码片段展示了在实际编码过程中怎样借助该插件获得有关变量`param`的信息提示,从而加快开发速度并降低出错几率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值