IntelliJ IDEA指北

配置

Maven

配置路径:File | Settings | Build, Execution, Deployment | Build Tools | Maven

settings.xml

xml 复制代码
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 
                              http://maven.apache.org/xsd/settings-1.0.0.xsd">
    
    <!-- 1. 本地仓库路径(按需修改) -->
    <localRepository>D:\Code\maven\repositry</localRepository>
    
    <!-- 2. 镜像仓库:配置阿里云镜像加速中央仓库 -->
    <mirrors>
        <mirror>
            <id>aliyunmaven</id>
            <mirrorOf>central</mirrorOf>
            <name>阿里云公共仓库</name>
            <!-- 使用更通用的公共仓库地址 -->
            <url>https://maven.aliyun.com/repository/public</url>
        </mirror>
    </mirrors>
    
    <!-- 3. 配置JDK 21编译环境 -->
    <profiles>
        <profile>
            <!-- 为该配置集定义一个ID,便于管理 -->
            <id>jdk-21</id>
            <activation>
                <!-- 当检测到系统JDK版本为21时,自动激活此profile -->
                <jdk>21</jdk>
                <!-- 同时设置为默认激活,确保即使JDK版本检测未触发也能生效 -->
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <!-- 指定源代码编译使用的JDK版本 -->
                <maven.compiler.source>21</maven.compiler.source>
                <!-- 指定生成的字节码目标版本 -->
                <maven.compiler.target>21</maven.compiler.target>
                <!-- 指定编译器本身的版本,确保完全兼容JDK 21特性 -->
                <maven.compiler.compilerVersion>21</maven.compiler.compilerVersion>
                <!-- 设置项目文件编码,避免乱码 -->
                <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
            </properties>
        </profile>
    </profiles>
    
    <!-- 4. 激活上述Profile(通过activation标签已激活,此部分为双重保障) -->
    <activeProfiles>
        <activeProfile>jdk-21</activeProfile>
    </activeProfiles>
</settings>

Code

智能提示不区分大小写

File | Settings | Editor | General | Code Completion

复选框 "Match case": 默认是勾选状态(即区分大小写)。要设置为不区分大小写,请取消勾选此选项

设置编码为UTF-8

File | Settings | Editor | File Encodings

调整编码为UTF-8,不勾选Transparent native-to-ascii conversion,否则properties配置文件会自动转成ascii

自动优化import

File | Settings | Tools | Actions on Save

"Optimize imports"IDEA 在文件保存时自动执行此操作

滚轮调整字体大小

File | Settings | Editor | General

"Change font size (Zoom) with Ctrl+Mouse Wheel"

代码自动格式化并配置模板

File | Settings | Tools | Actions on Save

"Reformat code"保存文件自动格式化

File | Settings | Editor | Code Style

导入模板

xml 复制代码
<code_scheme name="CodeFormatterFromIdea" version="173">
  <JavaCodeStyleSettings>
    <option name="ANNOTATION_PARAMETER_WRAP" value="1" />
    <option name="CLASS_COUNT_TO_USE_IMPORT_ON_DEMAND" value="999" />
    <option name="NAMES_COUNT_TO_USE_IMPORT_ON_DEMAND" value="999" />
    <option name="PACKAGES_TO_USE_IMPORT_ON_DEMAND">
      <value />
    </option>
    <option name="IMPORT_LAYOUT_TABLE">
      <value>
        <emptyLine />
        <package name="" withSubpackages="true" static="true" />
        <emptyLine />
        <package name="android" withSubpackages="true" static="false" />
        <emptyLine />
        <package name="androidx" withSubpackages="true" static="false" />
        <emptyLine />
        <package name="huawei" withSubpackages="true" static="false" />
        <emptyLine />
        <package name="com.huawei" withSubpackages="true" static="false" />
        <emptyLine />
        <package name="com" withSubpackages="true" static="false" />
        <emptyLine />
        <package name="" withSubpackages="true" static="false" />
        <emptyLine />
        <package name="net" withSubpackages="true" static="false" />
        <emptyLine />
        <package name="org" withSubpackages="true" static="false" />
        <emptyLine />
        <package name="javacard" withSubpackages="true" static="false" />
        <emptyLine />
        <package name="java" withSubpackages="true" static="false" />
        <emptyLine />
        <package name="javax" withSubpackages="true" static="false" />
        <emptyLine />
      </value>
    </option>
    <option name="JD_ALIGN_PARAM_COMMENTS" value="false" />
    <option name="JD_ALIGN_EXCEPTION_COMMENTS" value="false" />
  </JavaCodeStyleSettings>
  <XML>
    <option name="XML_TEXT_WRAP" value="0" />
  </XML>
  <codeStyleSettings language="JAVA">
    <option name="RIGHT_MARGIN" value="120" />
    <option name="LINE_COMMENT_AT_FIRST_COLUMN" value="false" />
    <option name="BLOCK_COMMENT_AT_FIRST_COLUMN" value="false" />
    <option name="LINE_COMMENT_ADD_SPACE" value="true" />
    <option name="KEEP_LINE_BREAKS" value="false" />
    <option name="KEEP_FIRST_COLUMN_COMMENT" value="false" />
    <option name="KEEP_CONTROL_STATEMENT_IN_ONE_LINE" value="false" />
    <option name="KEEP_BLANK_LINES_IN_DECLARATIONS" value="1" />
    <option name="KEEP_BLANK_LINES_IN_CODE" value="1" />
    <option name="KEEP_BLANK_LINES_BEFORE_RBRACE" value="1" />
    <option name="BLANK_LINES_BEFORE_PACKAGE" value="1" />
    <option name="BLANK_LINES_AROUND_FIELD" value="1" />
    <option name="ALIGN_MULTILINE_PARAMETERS" value="false" />
    <option name="ALIGN_MULTILINE_RESOURCES" value="false" />
    <option name="ALIGN_MULTILINE_FOR" value="false" />
    <option name="ALIGN_MULTILINE_THROWS_LIST" value="true" />
    <option name="SPACE_WITHIN_BRACES" value="true" />
    <option name="SPACE_BEFORE_ARRAY_INITIALIZER_LBRACE" value="true" />
    <option name="SPACE_BEFORE_ANNOTATION_ARRAY_INITIALIZER_LBRACE" value="true" />
    <option name="CALL_PARAMETERS_WRAP" value="1" />
    <option name="METHOD_PARAMETERS_WRAP" value="1" />
    <option name="RESOURCE_LIST_WRAP" value="5" />
    <option name="EXTENDS_LIST_WRAP" value="1" />
    <option name="THROWS_LIST_WRAP" value="1" />
    <option name="EXTENDS_KEYWORD_WRAP" value="1" />
    <option name="THROWS_KEYWORD_WRAP" value="1" />
    <option name="METHOD_CALL_CHAIN_WRAP" value="5" />
    <option name="BINARY_OPERATION_WRAP" value="1" />
    <option name="BINARY_OPERATION_SIGN_ON_NEXT_LINE" value="true" />
    <option name="TERNARY_OPERATION_WRAP" value="5" />
    <option name="TERNARY_OPERATION_SIGNS_ON_NEXT_LINE" value="true" />
    <option name="KEEP_SIMPLE_LAMBDAS_IN_ONE_LINE" value="true" />
    <option name="KEEP_SIMPLE_CLASSES_IN_ONE_LINE" value="true" />
    <option name="ARRAY_INITIALIZER_WRAP" value="1" />
    <option name="ARRAY_INITIALIZER_LBRACE_ON_NEXT_LINE" value="true" />
    <option name="ARRAY_INITIALIZER_RBRACE_ON_NEXT_LINE" value="true" />
    <option name="ASSIGNMENT_WRAP" value="1" />
    <option name="PLACE_ASSIGNMENT_SIGN_ON_NEXT_LINE" value="true" />
    <option name="ASSERT_STATEMENT_WRAP" value="1" />
    <option name="IF_BRACE_FORCE" value="3" />
    <option name="DOWHILE_BRACE_FORCE" value="3" />
    <option name="WHILE_BRACE_FORCE" value="3" />
    <option name="FOR_BRACE_FORCE" value="3" />
    <option name="PARAMETER_ANNOTATION_WRAP" value="1" />
    <option name="VARIABLE_ANNOTATION_WRAP" value="1" />
    <option name="ENUM_CONSTANTS_WRAP" value="2" />
    <indentOptions>
      <option name="CONTINUATION_INDENT_SIZE" value="4" />
    </indentOptions>
  </codeStyleSettings>
</code_scheme>

Java代码自动添加版权

File | Settings | Appearance & Behavior | Scopes

创建作用域,仅对Java文件生效

File | Settings | Editor | Copyright | Copyright Profiles

创建版权模板:Copyright © today.year−{today.year}-today.year−{today.year} com.Local All rights reserved.

File | Settings | Editor | Copyright

配置指定作用域对应的版本模板

快捷生成Java Class doc注释模板

File | Settings | Editor | Live Templates

创建Template Group,创建Live Template,设置缩写Abbreviation,设置doc注释内容,设置变量date("yyyy-MM-dd"),设置快捷键Expand with,设置作用范围

插件

Cool Request

相关推荐
灰色小旋风5 小时前
力扣合并K个升序链表C++
java·开发语言
_MyFavorite_5 小时前
JAVA重点基础、进阶知识及易错点总结(28)接口默认方法与静态方法
java·开发语言·windows
helx825 小时前
SpringBoot中自定义Starter
java·spring boot·后端
_MyFavorite_5 小时前
JAVA重点基础、进阶知识及易错点总结(31)设计模式基础(单例、工厂)
java·开发语言·设计模式
ILYT NCTR6 小时前
SpringSecurity 实现token 认证
java
rleS IONS6 小时前
SpringBoot获取bean的几种方式
java·spring boot·后端
014-code6 小时前
Java SPI 实战:ServiceLoader 的正确打开方式(含类加载器坑)
java·开发语言
程序员榴莲6 小时前
Javase(七):继承
java
wwj888wwj6 小时前
Docker基础(复习)
java·linux·运维·docker
qq_5470261796 小时前
LangChain 工具调用(Tool Calling)
java·大数据·langchain