# idea 各种问题

返回:idea

# idea 误删除.iml 文件后

返回顶部

2020-10-29_092056.gif

# 1、编译的 jar 包——无主清单属性

idea 编译的 jar 包运行时,报“无主清单属性”,解决方案:

  1. Ctrl+Shift+Alt+S,打开项目属性,选中 Artifacts-->JAR-->from module with dependenceis
  2. 选中 MainClass,选中 copy

另一种直接通过maven install运行生产jar包

# 2、idea 中提交 svn 时一直显示 performing VCS refresh

  1. 从 svn 上同步下来项目之后,执行npm install,会自动在项目目录下生成node_modules文件夹
  2. File--Setting--Version Control--Ingored Files--新增--Ignore all files under ---选择项目目录下的 node_modules 目录。

# 3、Intellij IDEA 中的 Debug 控制台输出窗口不见了的解决办法

ideaNormal12.jpg

在 Debug 工具窗口,如图点击左侧重置布局图标,你的 console 窗口就还原了。

# IDEA 中 springBoot 不见了

settings-->plugins-->springboot

# 类存在,但提示找不到

  • 刷新 maven 项目
  • 清理idea缓存

2021-03-25_133650.gif

  • maven clean install
  • rebulid

# 导入的是maven工程但是idea无法识别

以下两步即可

150875316240167.png

495065416258593.png

# 2字节的utf-8序列2字节无效

目前遇到的就是神经病溢出,修改xml文件头部中UTF-8为UTF8,竟然能成功运行,而后再修改为UTF-8依然能成功运行,你说是不是发神经?

# Boolean method 'xxx' is always inverted

  • 提示详情:
    • 一个返回类型为布尔值的方法,被IDEA自动高亮,提示为 Boolean method 'xxx' is always inverted。并提供一个Invert method的解决方案。
    • 一句话解释一下,就是:你这个方法返回值总是被取非(!)使用,为啥不直接返回一个取非后的值呢
/**
* 示例:一个人没钱的话,就给他安排上好的圈子
*/
private boolean isRich(Man man){
    if (man == null){
        return false;
    }
    // 有存款不欠债
    if (man.getDeposit() == 0 || man.getDebt() != 0){
        return false;
    }
    // 有房有车
    return man.getCarNum() != 0 && man.getHouseNum() != 0;
}
...

// 没钱的tom需要王思聪做朋友
if (!isRich(tom)){
	tom.setFriend("王思聪");
}
...
// 没钱的jerry需要马云做爸爸
if (!isRich(jerry)){
	jerry.setFather("马云");
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

所以IDEA建议你直接修改方法为:判定是不是穷。 点击其提供的Invert method,输入新的方法名isPoor

IDEA会自动处理代码,输入前方法返回值取非的结果,并对方法被调用的地方进行修改。原代码就会变成:

private boolean isPoor(Man man){
    if (man == null){
        return true;
    }
    // 没存款还欠债
    if (man.getDeposit() == 0 || man.getDebt() != 0){
        return true;
    }
    // 没房没车
    return man.getCarNum() == 0 || man.getHouseNum() == 0;
}
...
// 没钱的tom需要王思聪做朋友
if (isPoor(tom)){
	tom.setFriend("王思聪");
}
...
// 没钱的jerry需要马云做爸爸
if (isPoor(jerry)){
	jerry.setFather("马云");
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

# Command line is too long