在实习过程中,我发现我的同事在使用IDEA时并不是很熟练。为了帮助他们更好地使用IDEA,我决定与他们共享我的设置。同时,我还将之前发布在个人博客上的文章复制粘贴了过来。

请注意:在使用我的设置后,您需要确保重写Maven设置中的User Setting File、Local Repository以及Java compiler、structure for project,以确保JVM版本设置正确。

首先,我们需要更改Maven的源。由于在编写SpringBoot项目时曾因依赖问题而受挫,因此我们应该首先更改Maven的源。

IDEA默认会有一个Maven工具,因此如果您之前修改过Maven配置,还需要在IDEA中指定具体使用的是哪一个MAVEN,以及使用哪一个配置文件。操作步骤如下:

1. 点击File -> New Projects Settings -> Settings for new Projects

2. 在User settings file中选择您想要使用的Maven配置文件。

在pom.xml文件中,可以通过以下方式指定镜像源:

```xml

mirrorId

repositoryId

Human Readable Name for this Mirror

http://my.repository.com/repo/path

```

其中,``标签用于为镜像源设置唯一标识符,``标签用于指定该镜像源所提供的仓库的ID,``标签用于给镜像源设置可读名称,``标签用于指定镜像源的URL地址。

如果需要使用其他镜像源,可以添加更多的``标签,并根据需要设置相应的属性值。例如,要使用阿里云的Maven镜像源,可以在pom.xml文件中添加如下配置:

```xml

aliyun

*

aliyun maven

http://maven.aliyun.com/nexus/content/groups/public

```

这样就会将所有的依赖仓库都代理到阿里云的Maven镜像源上。

请根据以下要求完成重构:

将以下XML片段转换为对应的Java代码。

```xml

alimaven

aliyun maven

http://maven.aliyun.com/nexus/content/groups/public/

```

重构后的Java代码:

```java

public class RepositoryConfig {

private String id;

private String name;

private String url;

public String getId() {

return id;

}

public void setId(String id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getUrl() {

return url;

}

public void setUrl(String url) {

this.url = url;

}

}

```

以下是重构后的代码:

```java

public class MainMenu {

public static void main(String[] args) {

// 关闭当前标签页

closeCurrentTab();

// 切换到下一行

switchToNextLine();

// 格式化代码

reformatCode();

// 根据上下文完成动作(导包)

showContextActions();

// 优化import导入

optimizeImports();

// 插入生成模板(psvm)

insertLiveTemplate();

// 打开设置面板

openSettings();

// 统一修改变量名

refactorRename();

// 搜索指定Class

searchClass("MainMenu");

// 重写方法

overrideMethods();

// 查看类继承关系

viewClassInheritance();

// 查看类继承关系图

viewClassInheritanceGraph();

}

}

```

打开Preferences(偏好设置),点击Editor(编辑器)-> Live Templates(实时模板)。

在右边的加号处为自己添加一个Templates Group(模板组),然后选中自己的Group,再次点击加号添加Live Templates。

记得要把最下面的提示▲.No applicable contexts yet.Define -> 设置为Java。

接下来,在Edit variables里面添加参数和返回值的自动取值:/ + 你设置的Abbreviation快捷键 + tab/ + q + tab。例如:

神秘密码(Template text中填的):

$params$$returns$

** * @Description: $description$ * @Param: $params$ * @Return: $returns$ * @Author: MrLi * @Date: $date$ */

不错的配置:

** * @author: Mrli * @description: * @date: $date$ $time$$param$ $return$ */

datetimeExpressionparam

groovyScript("def result = '\'';def params = \"${_1}\".replaceAll('[\\\[|\\\\]|\\\\s]', '\'').split(',').toList(); for(i = 0; i < params.size(); i++) {if(params[i] != '')}result+='* @param: ' + params[i] + ((i < params.size() - 1) ? '\\r\

' : '');}; return result == '\'' ? null : '\r\

' + result", methodParameters())

return

在Groovy脚本中,我们可以使用以下代码来实现:

```groovy

groovyScript("return \"${_1}\" == 'void' ? null : \\r\

* @return: ${_1}", methodReturnType())

```

接下来,我们需要删除没有用到的包。这里有两个方法可以帮助你完成这个任务:

1. 手动快捷键:按下 `Ctrl + Alt + O`(Windows/Linux)或 `Cmd + Alt + O`(Mac)。

2. 配置自动清理:打开设置 -> editor -> auto import,然后勾选 "Optimize imports on the fly"(自动去掉一些没有用到的包)和 "Add unambiguous imports on the fly"(自动帮我们优化导入的包)。

此外,Intellij IDEA 报错 "Error : java 不支持发行版本5",你可以按照以下步骤进行排查:

1. 在 Intellij 中点击 "File" -> "Project Structure",查看 "Project" 和 "Module" 栏目中的 Java 版本是否与本地一致。

2. 如果 Java 版本不一致,请修改项目设置中的 Java 版本为 8。

3. 确保开启了注解编译。在 "Settings" -> "Build, Execution, Deployment" -> "Compiler" -> "Annotation Processors" 中勾选 "Enable annotation processing"。

以下是重构后的内容:

Java短代码(快捷代码):

- 变量.sout:输出变量

```java

System.out.println(变量);

```

- soutv:输出变量名和值

```java

System.out.println("变量名 = " + (变量 != null ? 变量 : "true" + true));

```

- 指定变量.soutv:输出指定的变量名

```java

System.out.println("变量名 = " + 指定变量);

```

- soutm:输出当前类名和方法名

```java

System.out.println("当前类名.当前方法");

```

- soutp:输出方法形参名和值

```java

System.out.println("方法形参名 = " + 形参名);

```

以下是重构后的代码,我为每个循环添加了适当的注释:

```java

// length.fori - 从0到指定长度的整数循环

int length = 10;

for (int i = 0; i < length; i++) {

// 在这里执行你的操作

}

// length.forr - 从指定长度倒序到0的整数循环

for (int i = length; i > 0; i--) {

// 在这里执行你的操作

}

// array.fori - 对一个已存在的整数数组进行循环

int[] array = new int[10];

for (int i = 0; i < arr.length; i++) {

// 这里可以访问并操作数组arr中的元素

}

// array.for - Java 8中对集合类(如List)的增强型for循环

List list = new ArrayList<>();

for (String item : list) {

// 这里可以访问和操作列表中的元素

}

// list.forr - 从尾到头遍历集合的增强型for循环

list.forEach(item -> System.out.println(item));

// itar - Java 5及更早版本中对数组的普通for循环

int[] array = new int[10];

for (int i = 0; i < array.length; i++) {

int value = array[i]; // 你可以使用临时变量存储当前元素的值,或者直接在循环体内引用它,这主要取决于你的需求和编码风格。

}

// array.iter - Java 8中对集合类(如List)的普通增强型for循环

array.stream().forEach(System.out::println); // 如果你正在处理一个包含整数的List,可以使用Java 8的Stream API来简洁地实现这个循环。

```