Java从入门到工作2 - IDEA

2.1、项目启动

从git获取到项目代码后,用idea打开。

  1. 安装依赖
  2. 完成Marven/JDK等配置
  3. 检查数据库配置
  4. 启动相关服务

安装依赖

如果个别依赖从私服下载不了,可以去maven官网下载补充。

如果run时提示程序包xx不存在,在项目目录右键Marven->ReLoad Project,重新下载依赖。

数据库配置

数据库连接如果异常,可在idea服务器连接工具完成测试工作。

启动相关服务

无服务架构的项目,一般需要多个服务来支持应用。注意别忘了注册中心,比如zookeeper或Eureka

2.2、启动报错汇总

2.1.1 compiler error

这个错是我在第一次导入团队代码后,run services时发生的,完整报错内容为

复制代码
java: Compilation failed: internal java compiler error

报错信息翻译下就是编译异常,个人觉得以上报错主要原因可能是sdk不一致,或者是build时分配的内存太小。定位起来较繁琐,我花了一上午折腾。

解决办法:

1、查看项目的 jdk(Ctrl+Alt+shift+S)

File ->Project Structure->Project Settings ->Project

2、查看工程的 jdk(Ctrl+Alt+shift+S)

File ->Project Structure->Project Settings -> Modules -> (需要修改的工程名称) -> Sources ->

3、查看 idea 中 Java 配置

File ->Setting ->Build,Execution,Deployment -> Compiler -> Java Compiler

上面三步做完还是失败的话

清除 IDEA 缓存 重启 IDEA

File->Invalidate Caches/Restart

还有一种情况是因项目过大,需要修改这个堆的大小

解决方法如下:

在 setting-->Build,Execution,Deployment-->Compiler 中找到 build process heap size(Mbytes):700 改为 1024(视情况而定)

(我就是这个原因造成的,改了一下堆大小就好了)

2.1.2 Unable start Tomcat

Unable to start web server; nested exception is org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat

考虑是否数据库连接失败,可在本地测试,确保正常连接后重启服务。有的数据库有网络要求,需要代理文件 。

数据库参数一般在application.properties文件中,datasource.slave.username配置中。

2.1.3 部分服务没有端口号

删除缓存后,重启服务可解决。File->Invalidate Caches,打开后全选所有选项,可彻底删除缓存。

2.3、搜索

"Find in Files"和双击Shift键(Search Everywhere)都是IntelliJ IDEA中强大的搜索工具,但它们的使用场景和目的有所不同。"Find in Files"更适合于在项目中查找特定的文本或代码片段,而双击Shift键(Search Everywhere)则提供了一种更广泛的搜索方式,可以帮助你快速找到几乎所有类型的元素。

Find in Files 快捷键Ctrl shift F,如果无效,找Edit->find->find in files

2.4、自动补全

controller中直接调用某个类中没有的方法test,该方法会飘红。鼠标悬停在方法名称上会有Create method 'test'提示,点击该提示会自动在该类中创建此方法。

interface中添加一个函数,实现类文件名称会飘红。在该文件中使用快捷键ctrl + i, 然后Enter即可**。注意自动生成的函数没有@RequestBody,需要手动添加。**

2.5、debugger

平时启动服务时不要选择run,直接选择debugger。然后可以随时在任何一行代码上添加红点开始调试,爽的一笔。

进入断点后的操作,如下图

上图的停止会结束服务,如果想在调试中途结束调试,但不结束服务。可点击红色方块下2位的三角符号(resume program)。

2.6、数据库可视化工具

在哪里写sql?

库名右键->New->Query Console

相关推荐
听风的码11 分钟前
Vue2封装Axios
开发语言·前端·javascript·vue.js
肉夹馍不加青椒15 分钟前
第三十三天(信号量)
java·c语言·算法
现在,此刻16 分钟前
面试题储备-MQ篇 2-说说你对RocketMQ的理解
java·rocketmq·java-rocketmq
诗句藏于尽头33 分钟前
更改jar素材后打包
java·jar
SimonKing38 分钟前
开源新锐:SQL玩转搜索引擎?Manticore颠覆你的认知
java·后端·程序员
素界UI设计1 小时前
建筑行业变革:用Three.js构建BIM数据可视化孪生平台
开发语言·javascript·信息可视化
中国lanwp1 小时前
Jenkins Pipeline中参数化构建
java·jenkins
记录Java学习的三木2 小时前
Java:将视频上传到腾讯云并通过腾讯云点播播放
java
王廷胡_白嫖帝2 小时前
Qt个人通讯录项目开发教程 - 从零开始构建联系人管理系统
开发语言·qt
qianmoq2 小时前
第01章:Stream是什么?5分钟让你的循环代码变优雅
java