Java从入门到工作2 - IDEA

时间:2024-12-16 22:05:18

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