草庐IT

Java开发工具 IntelliJ IDEA(idea使用教程,手把手教学)内容很全,一篇管够!!!

华夏天骄 2023-04-09 原文

IDEA使用教程

下载安装

IntelliJ IDEA 介绍

IDEA,全称 IntelliJ IDEA,是 Java 语言的集成开发环境,IDEA 在业界被公认为是最好的 java 开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE 支持、Ant、JUnit、CVS 整合、代码审查、创新的 GUI 设计等方面的功能可以说是超常的。

IntelliJ IDEA 在官网上这样介绍自己:
Excel at enterprise, mobile and web development with Java, Scala and Groovy, with all the latest modern technologies and frameworks available out of the box.

简明翻译:IntelliJ IDEA 主要用于支持 Java、Scala、Groovy 等语言的开发工具,同时具备支持目前主流的技术和框架,擅长于企业应用、移动应用和 Web 应用的开发。

IDEA 的主要优势:(相较于 Eclipse 而言)

① 强大的整合能力。比如:Git、Maven、Spring 等
② 提示功能的快速、便捷
③ 提示功能的范围广
④ 好用的快捷键和代码模板。比如:private static final = psf
⑤ 精准搜索

IDEA 官网下载地址:

https://www.jetbrains.com/idea/download/
IDEA 分为两个版本:旗舰版(Ultimate)和社区版(Community)。
旗舰版收费(限 30 天免费试用),社区版免费,这和 Eclipse 有很大区别。
两个不同版本的详细对比,可以参照官网:
  https://www.jetbrains.com/idea/features/editions_comparison_matrix.html

官网提供的详细使用文档

https://www.jetbrains.com/help/idea/meet-intellij-idea.html

安装过程

安装时首选装旗舰版,社区版虽然免费,但是有些功能不全

双击运行安装程序【ideaIU-yyyy.MM.exe】安装:

点击下一步(Next)

择好【文件的安装文件目录】,点击【Next】


*红色箭头所指向的选项代表根据你的电脑选择对应的位数,这里我选择64位。
绿色箭头所指向的选项代表关联文件,如果你打钩了,以后你双击电脑上的.java文件就会用它打开,这里推荐选择不关联。。
蓝色箭头所指向的选项代表是否由JetBrain自动下载一个jre,对于之前没有在电脑上配置jre的人来说强烈建议你在此处勾选上,同一个计算机内可以有多套jre共存并且彼此互相不冲突。每个程序都可以自带jre,当程序运行的时候会寻找对应的jre,寻找时具有优先级,先寻当前目录,再寻父目录,最后在系统的环境变量里寻找。而如果之前在系统的环境变量里已经配置了jre的路径,那不选择倒也不会出很大问题。但如果不确定的话建议在安装JetBrain时选择自动安装一个jre,既方便又不会和已有的环境冲突,多个jre是共存的,无非是占用一点磁盘空间而已。
其余的可以日后加选:

点击安装(Install)

点击完成(Finish)

首装配置

首次安装启动,会弹出如下的对话框。选择不导入已有的设置,点击【OK】


再点击接收用户许可,点击【继续】

点击【不发送】

设置主题

这里根据个人喜好进行选择,也可以选择跳过(skip all and set defaults)。后面在settings 里再设置主题等。
这里选择【Next:Default plugins】

设置插件

设置IDEA中的各种插件,可以选择自定义设置删除,或者安装本身不存在的插件(比如:支持 Scala 的插件)。这里不设置,后面也可以通过界面菜单栏的 settings 进行设置。
IDEA 插件官方下载地址:https://plugins.jetbrains.com/idea
点击【Next:Featured plugins】


点击【Start using IntelliJ IDEA】

工具激活

IEDA的激活方式有三种激活码激活服务器破解补丁

激活码可以去网淘,激活时间一般都是一年;

激活服务器的激活到期时间就看服务器稳定程度以及JB官方是否对其封杀;

破解补丁是利用程序注入实现激活,可以实现永久激活(2100年过期)。

工具使用(入门)

创建Java项目

Create New Project:创建一个新的项目。
Import Project:导入一个现有的项目。
Open:打开一个已有项目。比如:可以打开 Eclipse 项目。
Check out from Version Control:可以通过服务器上的项目地址 check out Github 上面项目或其他 Git 托管服务器上的项目。

这里选择 Create New Project

如果要创建 Web 项目,则需要勾选上面的 Web Application。这例先示范创建简单的 Java 项目。

选择【New…】,选择 jdk 的安装路径所在位置:

选择指定目录下的 JDK 作为 Project SDK。

点击【OK】以后,选择【Next】

这里不需要勾选。选择【Next】,进入下一个页面:

给创建的项目起名字和设置项目所在位置,点击【finish】

项目界面

项目下的 src 类似于 Eclipse 下的 src 目录,用于存放代码。
项目下的.idea 和 project01.iml 文件都是 IDEA 项目特有的。类似于 Eclipse 项目下的.settings、.classpath、.project 文件等。

调出工具条和按钮组

创建包(Package )

接着在 src 目录下创建一个 package:


创建Java文件(class)

在包下 New 一个 Java Class:

不管是创建 Class,还是 Interface,还是 Annotation,都是选择 New --> Java Class,然后在 Kind 下拉框中选择创建的结构的类型。接着在类 HelloWorld 里声明主方法,输出 Hello World!,完成测试

说明:在 IDEA 里要说的是,写完代码,不用点击保存。IDEA 会自动保存代码。

创建模块


相比于多 Module 项目,小项目就无需搞得这么复杂。只有一个 Module 的结构 IntelliJ IDEA 也是支持的,并且 IntelliJ IDEA 创建项目的时候,默认就是单 Module 的结构的。
创建 Module:

点击【Next】

给模块起名字和保存的位置

之后,我们可以在 Module 的 src 里写代码,此时 Project01 项目下的 src 就没什么
用了。可以删掉。

删除模块


选中要删除的模块,点击减号

此时再选中要删除的模块会出现有【Delete】选项,会从硬盘上将此 Module 删除掉

查看项目配置

进入项目结构:

常用配置

进入设置界面


目录结构如下:

设置主题

设置编辑区主题

设置自动导包功能

  • Add unambiguous imports on the fly:自动导入不明确的结构
  • Optimize imports on the fly:自动帮我们优化导入的包

设置方法间的分隔

  • 如上图红圈所示,可以勾选 Show line numbers:显示行数。新版本idea默认已经勾选。
  • 如上图红圈所示,可以勾选 Show method separators:显示方法分隔线。这种线有助于我们区分开方法。

设置大小写提示

  • IntelliJ IDEA 的代码提示和补充功能有一个特性:区分大小写。如上图标注所示,默认就是 First letter only 区分大小写的。
  • 区分大小写的情况是这样的:比如我们在 Java 代码文件中输入 stringBuffer,IntelliJ IDEA - 默认是不会帮我们提示或是代码补充的,但是如果我们输入StringBuffer 就可以进行代码提示和补充。
  • 如果想不区分大小写的话,取消勾选该选项即可。(2017版本的IEDA中是改为 None 选项)

设置字体样式

修改注释的颜色

  • Doc Comment –> Text:修改文档注释的字体颜色
  • Block comment:修改多行注释的字体颜色
  • Line comment:修改当行注释的字体颜色

设置文件编码格式

常用快捷键

创建Java Web 项目(进阶)

创建的静态 Java Web(前端开发)

file 右键 或 项目右键 -> New -> Module


设置静态web的项目名称和位置:

创建动态 Web 的 Module(后端开发)

file 右键 或 项目右键 -> New -> Module


这里一定要勾选 Web Application,才能创建一个 Web 项目。

提供 Web 项目名和位置。 创建以后的项目结构如下:

配置本地 Tomcat

点击 Edit Configurations

选择Templates -> Tomcat Server -> Local,编辑好模板后,再点击"+”按钮,再选择Tomcat Server -> Local。
选择 TomEE Server 或者 Tomcat Server 都可以。


然后配置 Tomcat 的名称以及配置应用服务器的位置。根据自Tomcat 的安装位置决定。

其它位置使用默认值(设置要启动的浏览器以及端口号),如下图:

接着点击部署【Deployment】-> 点击+ -> 【Artifact】:

选择应用后

再点回【Server】选项卡,此时:

这样我们的模板就配置好了,接下来,我们点击"+"按钮,再选择Tomcat Server -> Local,直接使用我们新建配置好的模板即可,如下图:

点击【OK】即配置完成

连接数据库

关联方式:


填写数据库相关信息,此时【Test Connection】为灰色状态

填写完成后,点击【Download missing driver files】去中央仓库下载驱动文件,此时【Test Connection】为可点击状态,我们点击它进行数据库连接测试,测试成功如下:

点击【OK】后,查看效果:

补充:如果你选用的数据库是Oracle,过程可仿照上面的步骤,基本一致

常用操作

  • 图标 1:同步当前的数据库连接。这个是最重要的操作。配置好连接以后或通过其他工具操作数据库以后,需要及时同步。
  • 图标 2:配置当前的连接。
  • 图标 3:断开当前的连接。
  • 图标 4:显示相应数据库对象的数据。
  • 图标 5:编辑修改当前数据库对象。

配置 Maven

Maven 的配置

Maven 的核心程序并不包含具体功能,仅负责宏观调度。具体功能由插件来完成
Maven 核心程序会到本地仓库中查找插件。
如果本地仓库中没有就会从远程中央仓库下载。 此时如果不能上网则无法执行 Maven 的具体功能。 为了解决这个问题,我们可以将 Maven 的本地仓库指向一个在联网情况下下载好的目录。

  • Maven home directory:可以指定本地 Maven 的安装目录所在,因为我已经配置了 MAVEN_HOME 系统参数,所以直接这样配置 IntelliJ IDEA 是可以找到的。但是假如你没有配置的话,这里可以选择你的 Maven 安装目录。此外,这里不建议使用 IDEA 默认的。
  • User settings file / Local repository:我们还可以指定 Maven 的 settings.xml 位置和本地仓库位置。

settings.xml文件修改的地方:

1、本地仓库地址

2、远程仓库地址

settings.xml文件修改的内容如下:
......
    <localRepository>D:\learn\Maven\repository-idea</localRepository>
......
    <!-- 阿里云的远程仓库 -->
    <mirror>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
    <!-- maven官方运维的2号远程仓库 -->
    <mirror>
        <id>repo2</id>
        <name>rep2 maven</name>
        <url>http://repo2.maven.org/maven2/</url>
        <mirrorOf>central</mirrorOf>
    </mirror>
......
复制代码
Maven -> Importing

  • Import Maven projects automatically:表示 IntelliJ IDEA 会实时监控项目的 pom.xml 文件,进行项目变动设置,建议勾选。
  • Automatically download:在 Maven 导入依赖包的时候是否自动下载源码和文档。默认是没有勾选的,也不建议勾选,原因是这样可以加快项目从外网导入依赖包的速度,如果我们需要源码和文档的时候我们到时候再针对某个依赖包进行联网下载即可。IntelliJ IDEA 支持直接从公网下载源码和文档的。
  • VM options for importer:可以设置导入的 VM 参数。一般这个都不需要主动改,除非项目真的导入太慢了我们再增大此参数。

演示使用Maven

创建对应的 Module


选择Spring Boot 的模板 Spring Initializr

举例:此时 Spring Initalizr 是 springboot 项目的模板。

  • Group:组织或公司域名,倒序
  • Artifact:项目模块名称
  • Version:默认 maven 生成版本:0.0.1-SNAPSHOT


这里可以暂时先不选,后面开发需要了再进行设置。

点击【finish】 即可完成创建。

创建完成以后,可以在 IDEA 右边看到创建的 Module。如果没有,可以刷新一下。目录下也会有对应的生命周期。其中常用的是:clean、compile、package、install。比如这里install,如果其他项目需要将这里的模块作为依赖使用,那就可以install。安装到本地仓库的位置。


本地仓库中的文件截图:

其他设置

生成 javadoc


填写生成javadoc的项目或者模块、输出位置、语言、编码等

Locale:输入语言类型:zh_CN
Other command line arguments:-encoding UTF-8 -charset UTF-8
出现错误:未知标记:date 如下图:

取消更新

插件的使用

在 IntelliJ IDEA 的安装讲解中我们其实已经知道,IntelliJ IDEA 本身很多功能也都是通过插件的方式来实现的。
官网插件库:https://plugins.jetbrains.com/



在IDEA中是打开Settings

需要特别注意的是:在国内的网络下,经常出现显示不了插件列表,或是显示了插件列表,无法下载完成安装。这时候请自行打开 VPN,一般都可以得到解决。
演示安装GsonFormat


如下图演示,在线安装 IntelliJ IDEA 插件库中的插件。安装完以后会提示重启,才可以使用插件。

常用插件推荐

有关Java开发工具 IntelliJ IDEA(idea使用教程,手把手教学)内容很全,一篇管够!!!的更多相关文章

  1. ruby - 使用 C 扩展开发 ruby​​gem 时,如何使用 Rspec 在本地进行测试? - 2

    我正在编写一个包含C扩展的gem。通常当我写一个gem时,我会遵循TDD的过程,我会写一个失败的规范,然后处理代码直到它通过,等等......在“ext/mygem/mygem.c”中我的C扩展和在gemspec的“扩展”中配置的有效extconf.rb,如何运行我的规范并仍然加载我的C扩展?当我更改C代码时,我需要采取哪些步骤来重新编译代码?这可能是个愚蠢的问题,但是从我的gem的开发源代码树中输入“bundleinstall”不会构建任何native扩展。当我手动运行rubyext/mygem/extconf.rb时,我确实得到了一个Makefile(在整个项目的根目录中),然后当

  2. java - 等价于 Java 中的 Ruby Hash - 2

    我真的很习惯使用Ruby编写以下代码:my_hash={}my_hash['test']=1Java中对应的数据结构是什么? 最佳答案 HashMapmap=newHashMap();map.put("test",1);我假设? 关于java-等价于Java中的RubyHash,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/22737685/

  3. Ruby Sinatra 配置用于生产和开发 - 2

    我已经在Sinatra上创建了应用程序,它代表了一个简单的API。我想在生产和开发上进行部署。我想在部署时选择,是开发还是生产,一些方法的逻辑应该改变,这取决于部署类型。是否有任何想法,如何完成以及解决此问题的一些示例。例子:我有代码get'/api/test'doreturn"Itisdev"end但是在部署到生产环境之后我想在运行/api/test之后看到ItisPROD如何实现? 最佳答案 根据SinatraDocumentation:EnvironmentscanbesetthroughtheRACK_ENVenvironm

  4. ruby - 是否可以覆盖 gemfile 进行本地开发? - 2

    我们的git存储库中目前有一个Gemfile。但是,有一个gem我只在我的环境中本地使用(我的团队不使用它)。为了使用它,我必须将它添加到我们的Gemfile中,但每次我checkout到我们的master/dev主分支时,由于与跟踪的gemfile冲突,我必须删除它。我想要的是类似Gemfile.local的东西,它将继承从Gemfile导入的gems,但也允许在那里导入新的gems以供使用只有我的机器。此文件将在.gitignore中被忽略。这可能吗? 最佳答案 设置BUNDLE_GEMFILE环境变量:BUNDLE_GEMFI

  5. ruby - 在 Windows 机器上使用 Ruby 进行开发是否会适得其反? - 2

    这似乎非常适得其反,因为太多的gem会在window上破裂。我一直在处理很多mysql和ruby​​-mysqlgem问题(gem本身发生段错误,一个名为UnixSocket的类显然在Windows机器上不能正常工作,等等)。我只是在浪费时间吗?我应该转向不同的脚本语言吗? 最佳答案 我在Windows上使用Ruby的经验很少,但是当我开始使用Ruby时,我是在Windows上,我的总体印象是它不是Windows原生系统。因此,在主要使用Windows多年之后,开始使用Ruby促使我切换回原来的系统Unix,这次是Linux。Rub

  6. ruby-on-rails - 在 Rails 开发环境中为 .ogv 文件设置 Mime 类型 - 2

    我正在玩HTML5视频并且在ERB中有以下片段:mp4视频从在我的开发环境中运行的服务器很好地流式传输到chrome。然而firefox显示带有海报图像的视频播放器,但带有一个大X。问题似乎是mongrel不确定ogv扩展的mime类型,并且只返回text/plain,如curl所示:$curl-Ihttp://0.0.0.0:3000/pr6.ogvHTTP/1.1200OKConnection:closeDate:Mon,19Apr201012:33:50GMTLast-Modified:Sun,18Apr201012:46:07GMTContent-Type:text/plain

  7. java - 从 JRuby 调用 Java 类的问题 - 2

    我正在尝试使用boilerpipe来自JRuby。我看过guide从JRuby调用Java,并成功地将它与另一个Java包一起使用,但无法弄清楚为什么同样的东西不能用于boilerpipe。我正在尝试基本上从JRuby中执行与此Java等效的操作:URLurl=newURL("http://www.example.com/some-location/index.html");Stringtext=ArticleExtractor.INSTANCE.getText(url);在JRuby中试过这个:require'java'url=java.net.URL.new("http://www

  8. java - 我的模型类或其他类中应该有逻辑吗 - 2

    我只想对我一直在思考的这个问题有其他意见,例如我有classuser_controller和classuserclassUserattr_accessor:name,:usernameendclassUserController//dosomethingaboutanythingaboutusersend问题是我的User类中是否应该有逻辑user=User.newuser.do_something(user1)oritshouldbeuser_controller=UserController.newuser_controller.do_something(user1,user2)我

  9. java - 什么相当于 ruby​​ 的 rack 或 python 的 Java wsgi? - 2

    什么是ruby​​的rack或python的Java的wsgi?还有一个路由库。 最佳答案 来自Python标准PEP333:Bycontrast,althoughJavahasjustasmanywebapplicationframeworksavailable,Java's"servlet"APImakesitpossibleforapplicationswrittenwithanyJavawebapplicationframeworktoruninanywebserverthatsupportstheservletAPI.ht

  10. 世界前沿3D开发引擎HOOPS全面讲解——集3D数据读取、3D图形渲染、3D数据发布于一体的全新3D应用开发工具 - 2

    无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD

随机推荐