idea 破解

idea 2017-2018_激活方法

IntelliJ Idea 2017 免费激活方法

1.到网站 http://idea.lanyus.com/ 获取注册码。

2.填入下面的license server:

  http://intellij.mandroid.cn/

  http://idea.imsxm.com/

  http://idea.iteblog.com/key.php

以上方法验证均可以

3.举例激活码1

1
CNEKJPQZEX-eyJsaWNlbnNlSWQiOiJDTkVLSlBRWkVYIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IkZvciBlZHVjYXRpb25hbCB1c2Ugb25seSIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiQUMiLCJwYWlkVXBUbyI6IjIwMTgtMDEtMzAifSx7ImNvZGUiOiJETSIsInBhaWRVcFRvIjoiMjAxOC0wMS0zMCJ9LHsiY29kZSI6IklJIiwicGFpZFVwVG8iOiIyMDE4LTAxLTMwIn0seyJjb2RlIjoiUlMwIiwicGFpZFVwVG8iOiIyMDE4LTAxLTMwIn0seyJjb2RlIjoiV1MiLCJwYWlkVXBUbyI6IjIwMTgtMDEtMzAifSx7ImNvZGUiOiJEUE4iLCJwYWlkVXBUbyI6IjIwMTgtMDEtMzAifSx7ImNvZGUiOiJSQyIsInBhaWRVcFRvIjoiMjAxOC0wMS0zMCJ9LHsiY29kZSI6IlBTIiwicGFpZFVwVG8iOiIyMDE4LTAxLTMwIn0seyJjb2RlIjoiREMiLCJwYWlkVXBUbyI6IjIwMTgtMDEtMzAifSx7ImNvZGUiOiJEQiIsInBhaWRVcFRvIjoiMjAxOC0wMS0zMCJ9LHsiY29kZSI6IlJNIiwicGFpZFVwVG8iOiIyMDE4LTAxLTMwIn0seyJjb2RlIjoiUEMiLCJwYWlkVXBUbyI6IjIwMTgtMDEtMzAifSx7ImNvZGUiOiJDTCIsInBhaWRVcFRvIjoiMjAxOC0wMS0zMCJ9XSwiaGFzaCI6IjUxOTU1OTMvMCIsImdyYWNlUGVyaW9kRGF5cyI6MCwiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-QOxwjWvRwJz6vo6J6adC3CJ4ukQHosbPYZ94URUVFna/Rbew8xK/M5gP3kAaPh6ZDveFdtMR1UBoumq3eCwXtXM3U3ls5noB4LIr+QplVlCj2pK5uNq7g/feyNyQcHpSXtvhIOnXDBLOecB05DOsxzm0p7ulGGJoAInmHeb9mc0eYjqc4RPpUQfh6HSYBnvEnKMlLF5bz4KEtzmsvvgA55CwzwQ3gRitm5Q/wUT7AQCBdjmBfNUjKVQL6TSjSDPp56FUdEs4Aab8LqstA2DIMbxocO64rvytmcUeIwu8Mi5uq87KQP5AQMSMYb59Inbd+dmVfx5cJo3fRS4/5s3/Hg==-MIIEPjCCAiagAwIBAgIBBTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTE1MTEwMjA4MjE0OFoXDTE4MTEwMTA4MjE0OFowETEPMA0GA1UEAwwGcHJvZDN5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxcQkq+zdxlR2mmRYBPzGbUNdMN6OaXiXzxIWtMEkrJMO/5oUfQJbLLuMSMK0QHFmaI37WShyxZcfRCidwXjot4zmNBKnlyHodDij/78TmVqFl8nOeD5+07B8VEaIu7c3E1N+e1doC6wht4I4+IEmtsPAdoaj5WCQVQbrI8KeT8M9VcBIWX7fD0fhexfg3ZRt0xqwMcXGNp3DdJHiO0rCdU+Itv7EmtnSVq9jBG1usMSFvMowR25mju2JcPFp1+I4ZI+FqgR8gyG8oiNDyNEoAbsR3lOpI7grUYSvkB/xVy/VoklPCK2h0f0GJxFjnye8NT1PAywoyl7RmiAVRE/EKwIDAQABo4GZMIGWMAkGA1UdEwQCMAAwHQYDVR0OBBYEFGEpG9oZGcfLMGNBkY7SgHiMGgTcMEgGA1UdIwRBMD+AFKOetkhnQhI2Qb1t4Lm0oFKLl/GzoRykGjAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBggkA0myxg7KDeeEwEwYDVR0lBAwwCgYIKwYBBQUHAwEwCwYDVR0PBAQDAgWgMA0GCSqGSIb3DQEBCwUAA4ICAQC9WZuYgQedSuOc5TOUSrRigMw4/+wuC5EtZBfvdl4HT/8vzMW/oUlIP4YCvA0XKyBaCJ2iX+ZCDKoPfiYXiaSiH+HxAPV6J79vvouxKrWg2XV6ShFtPLP+0gPdGq3x9R3+kJbmAm8w+FOdlWqAfJrLvpzMGNeDU14YGXiZ9bVzmIQbwrBA+c/F4tlK/DV07dsNExihqFoibnqDiVNTGombaU2dDup2gwKdL81ua8EIcGNExHe82kjF4zwfadHk3bQVvbfdAwxcDy4xBjs3L4raPLU3yenSzr/OEur1+jfOxnQSmEcMXKXgrAQ9U55gwjcOFKrgOxEdek/Sk1VfOjvS+nuM4eyEruFMfaZHzoQiuw4IqgGc45ohFH0UUyjYcuFxxDSU9lMCv8qdHKm+wnPRb0l9l5vXsCBDuhAGYD6ss+Ga+aDY6f/qXZuUCEUOH3QUNbbCUlviSz6+GiRnt1kA9N2Qachl+2yBfaqUqr8h7Z2gsx5LcIf5kYNsqJ0GavXTVyWh7PYiKX4bs354ZQLUwwa/cG++2+wNWP+HtBhVxMRNTdVhSm38AknZlD+PTAsWGu9GyLmhti2EnVwGybSD2Dxmhxk3IPCkhKAK+pl0eWYGZWG3tJ9mZ7SowcXLWDFAk0lRJnKGFMTggrWjV8GYpw5bq23VmIqqDLgkNzuoog==

举例激活码2

1
BIG3CLIK6F-eyJsaWNlbnNlSWQiOiJCSUczQ0xJSzZGIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IkZvciBlZHVjYXRpb25hbCB1c2Ugb25seSIsImNoZWNrQ29uY3VycmVudFVzZSI6ZmFsc2UsInByb2R1Y3RzIjpbeyJjb2RlIjoiQUMiLCJwYWlkVXBUbyI6IjIwMTctMTEtMjMifSx7ImNvZGUiOiJETSIsInBhaWRVcFRvIjoiMjAxNy0xMS0yMyJ9LHsiY29kZSI6IklJIiwicGFpZFVwVG8iOiIyMDE3LTExLTIzIn0seyJjb2RlIjoiUlMwIiwicGFpZFVwVG8iOiIyMDE3LTExLTIzIn0seyJjb2RlIjoiV1MiLCJwYWlkVXBUbyI6IjIwMTctMTEtMjMifSx7ImNvZGUiOiJEUE4iLCJwYWlkVXBUbyI6IjIwMTctMTEtMjMifSx7ImNvZGUiOiJSQyIsInBhaWRVcFRvIjoiMjAxNy0xMS0yMyJ9LHsiY29kZSI6IlBTIiwicGFpZFVwVG8iOiIyMDE3LTExLTIzIn0seyJjb2RlIjoiREMiLCJwYWlkVXBUbyI6IjIwMTctMTEtMjMifSx7ImNvZGUiOiJEQiIsInBhaWRVcFRvIjoiMjAxNy0xMS0yMyJ9LHsiY29kZSI6IlJNIiwicGFpZFVwVG8iOiIyMDE3LTExLTIzIn0seyJjb2RlIjoiUEMiLCJwYWlkVXBUbyI6IjIwMTctMTEtMjMifSx7ImNvZGUiOiJDTCIsInBhaWRVcFRvIjoiMjAxNy0xMS0yMyJ9XSwiaGFzaCI6IjQ3NzU1MTcvMCIsImdyYWNlUGVyaW9kRGF5cyI6MCwiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-iygsIMXTVeSyYkUxAqpHmymrgwN5InkOfeRhhPIPa88FO9FRuZosIBTY18tflChACznk3qferT7iMGKm7pumDTR4FbVVlK/3n1ER0eMKu2NcaXb7m10xT6kLW1Xb3LtuZEnuis5pYuEwT1zR7GskeNWdYZ0dAJpNDLFrqPyAPo5s1KLDHKpw+VfVd4uf7RMjOIzuJhAAYAG+amyivQt61I9aYiwpHQvUphvTwi0X0qL/oDJHAQbIv4Qwscyo4aYZJBKutYioZH9rgOP6Yw/sCltpoPWlJtDOcw/iEWYiCVG1pH9AWjCYXZ9AbbEBOWV71IQr5VWrsqFZ7cg7hLEJ3A==-MIIEPjCCAiagAwIBAgIBBTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTE1MTEwMjA4MjE0OFoXDTE4MTEwMTA4MjE0OFowETEPMA0GA1UEAwwGcHJvZDN5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxcQkq+zdxlR2mmRYBPzGbUNdMN6OaXiXzxIWtMEkrJMO/5oUfQJbLLuMSMK0QHFmaI37WShyxZcfRCidwXjot4zmNBKnlyHodDij/78TmVqFl8nOeD5+07B8VEaIu7c3E1N+e1doC6wht4I4+IEmtsPAdoaj5WCQVQbrI8KeT8M9VcBIWX7fD0fhexfg3ZRt0xqwMcXGNp3DdJHiO0rCdU+Itv7EmtnSVq9jBG1usMSFvMowR25mju2JcPFp1+I4ZI+FqgR8gyG8oiNDyNEoAbsR3lOpI7grUYSvkB/xVy/VoklPCK2h0f0GJxFjnye8NT1PAywoyl7RmiAVRE/EKwIDAQABo4GZMIGWMAkGA1UdEwQCMAAwHQYDVR0OBBYEFGEpG9oZGcfLMGNBkY7SgHiMGgTcMEgGA1UdIwRBMD+AFKOetkhnQhI2Qb1t4Lm0oFKLl/GzoRykGjAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBggkA0myxg7KDeeEwEwYDVR0lBAwwCgYIKwYBBQUHAwEwCwYDVR0PBAQDAgWgMA0GCSqGSIb3DQEBCwUAA4ICAQC9WZuYgQedSuOc5TOUSrRigMw4/+wuC5EtZBfvdl4HT/8vzMW/oUlIP4YCvA0XKyBaCJ2iX+ZCDKoPfiYXiaSiH+HxAPV6J79vvouxKrWg2XV6ShFtPLP+0gPdGq3x9R3+kJbmAm8w+FOdlWqAfJrLvpzMGNeDU14YGXiZ9bVzmIQbwrBA+c/F4tlK/DV07dsNExihqFoibnqDiVNTGombaU2dDup2gwKdL81ua8EIcGNExHe82kjF4zwfadHk3bQVvbfdAwxcDy4xBjs3L4raPLU3yenSzr/OEur1+jfOxnQSmEcMXKXgrAQ9U55gwjcOFKrgOxEdek/Sk1VfOjvS+nuM4eyEruFMfaZHzoQiuw4IqgGc45ohFH0UUyjYcuFxxDSU9lMCv8qdHKm+wnPRb0l9l5vXsCBDuhAGYD6ss+Ga+aDY6f/qXZuUCEUOH3QUNbbCUlviSz6+GiRnt1kA9N2Qachl+2yBfaqUqr8h7Z2gsx5LcIf5kYNsqJ0GavXTVyWh7PYiKX4bs354ZQLUwwa/cG++2+wNWP+HtBhVxMRNTdVhSm38AknZlD+PTAsWGu9GyLmhti2EnVwGybSD2Dxmhxk3IPCkhKAK+pl0eWYGZWG3tJ9mZ7SowcXLWDFAk0lRJnKGFMTggrWjV8GYpw5bq23VmIqqDLgkNzuoog==

4.对于 IDEA 2017.3月版本,需要按照如下的方式激活:

启动:idea_active_proxy激活代理.exe

接着,启动IDEA:输入server: http://localhost:8888 ,然后可以关闭idea_active_proxy工具

image-20230917150658106

5.万能的淘宝  IntelliJ IDEA, Ultimate,WebStorm,PhpStorm,PyCharm,GoLand,Appcode,Clion,  Datagrip, Rider, Rubymine, Resharper C++, dotcover, dotmemory, dotpeek, dotTrace 等等。(版本号15.x-18.x均可使用)

1
5HMBH3TMNB-eyJsaWNlbnNlSWQiOiI1SE1CSDNUTU5CIiwibGljZW5zZWVOYW1lIjoiZGUgZGUiLCJhc3NpZ25lZU5hbWUiOiIiLCJhc3NpZ25lZUVtYWlsIjoiIiwibGljZW5zZVJlc3RyaWN0aW9uIjoiRm9yIGVkdWNhdGlvbmFsIHVzZSBvbmx5IiwiY2hlY2tDb25jdXJyZW50VXNlIjpmYWxzZSwicHJvZHVjdHMiOlt7ImNvZGUiOiJJSSIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IlJTMCIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IldTIiwicGFpZFVwVG8iOiIyMDE5LTA2LTIzIn0seyJjb2RlIjoiUkQiLCJwYWlkVXBUbyI6IjIwMTktMDYtMjMifSx7ImNvZGUiOiJSQyIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IkRDIiwicGFpZFVwVG8iOiIyMDE5LTA2LTIzIn0seyJjb2RlIjoiREIiLCJwYWlkVXBUbyI6IjIwMTktMDYtMjMifSx7ImNvZGUiOiJSTSIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IkRNIiwicGFpZFVwVG8iOiIyMDE5LTA2LTIzIn0seyJjb2RlIjoiQUMiLCJwYWlkVXBUbyI6IjIwMTktMDYtMjMifSx7ImNvZGUiOiJEUE4iLCJwYWlkVXBUbyI6IjIwMTktMDYtMjMifSx7ImNvZGUiOiJHTyIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IlBTIiwicGFpZFVwVG8iOiIyMDE5LTA2LTIzIn0seyJjb2RlIjoiQ0wiLCJwYWlkVXBUbyI6IjIwMTktMDYtMjMifSx7ImNvZGUiOiJQQyIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9LHsiY29kZSI6IlJTVSIsInBhaWRVcFRvIjoiMjAxOS0wNi0yMyJ9XSwiaGFzaCI6Ijk0MDEwNTkvMCIsImdyYWNlUGVyaW9kRGF5cyI6MCwiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-bxO8rTTyr3M7eZ2vDLNED2oFAS+YVV9ql2RvEfJY6FyXPTmtO2I5XpEs9AoYVK5VX+NF7GD41LvCwONzvL69j1fDjVGcU1udj00srdHvuCMnPk1tsiJlnZ2wzmE+AVWKNbMMkzSphlxov5czEzRKG3lMPZ8ffz66+doKgcnef1y5owYdcm4qOCVGtBraBgDPNNM//BUTiCMu51J9B80YFvD2bDmw4pDYl2sorR/530+5Qc4Qrfeurz0YllUD7MEVzNKYh9hSLgWGk4GinB50qifwcqPhI6EF5TGD4oMHEdfCXom0NfO9P8fWwKpGFhfZ4XJml7k3EIAEzYFnau4QJw==-MIIEPjCCAiagAwIBAgIBBTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTE1MTEwMjA4MjE0OFoXDTE4MTEwMTA4MjE0OFowETEPMA0GA1UEAwwGcHJvZDN5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxcQkq+zdxlR2mmRYBPzGbUNdMN6OaXiXzxIWtMEkrJMO/5oUfQJbLLuMSMK0QHFmaI37WShyxZcfRCidwXjot4zmNBKnlyHodDij/78TmVqFl8nOeD5+07B8VEaIu7c3E1N+e1doC6wht4I4+IEmtsPAdoaj5WCQVQbrI8KeT8M9VcBIWX7fD0fhexfg3ZRt0xqwMcXGNp3DdJHiO0rCdU+Itv7EmtnSVq9jBG1usMSFvMowR25mju2JcPFp1+I4ZI+FqgR8gyG8oiNDyNEoAbsR3lOpI7grUYSvkB/xVy/VoklPCK2h0f0GJxFjnye8NT1PAywoyl7RmiAVRE/EKwIDAQABo4GZMIGWMAkGA1UdEwQCMAAwHQYDVR0OBBYEFGEpG9oZGcfLMGNBkY7SgHiMGgTcMEgGA1UdIwRBMD+AFKOetkhnQhI2Qb1t4Lm0oFKLl/GzoRykGjAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBggkA0myxg7KDeeEwEwYDVR0lBAwwCgYIKwYBBQUHAwEwCwYDVR0PBAQDAgWgMA0GCSqGSIb3DQEBCwUAA4ICAQC9WZuYgQedSuOc5TOUSrRigMw4/+wuC5EtZBfvdl4HT/8vzMW/oUlIP4YCvA0XKyBaCJ2iX+ZCDKoPfiYXiaSiH+HxAPV6J79vvouxKrWg2XV6ShFtPLP+0gPdGq3x9R3+kJbmAm8w+FOdlWqAfJrLvpzMGNeDU14YGXiZ9bVzmIQbwrBA+c/F4tlK/DV07dsNExihqFoibnqDiVNTGombaU2dDup2gwKdL81ua8EIcGNExHe82kjF4zwfadHk3bQVvbfdAwxcDy4xBjs3L4raPLU3yenSzr/OEur1+jfOxnQSmEcMXKXgrAQ9U55gwjcOFKrgOxEdek/Sk1VfOjvS+nuM4eyEruFMfaZHzoQiuw4IqgGc45ohFH0UUyjYcuFxxDSU9lMCv8qdHKm+wnPRb0l9l5vXsCBDuhAGYD6ss+Ga+aDY6f/qXZuUCEUOH3QUNbbCUlviSz6+GiRnt1kA9N2Qachl+2yBfaqUqr8h7Z2gsx5LcIf5kYNsqJ0GavXTVyWh7PYiKX4bs354ZQLUwwa/cG++2+wNWP+HtBhVxMRNTdVhSm38AknZlD+PTAsWGu9GyLmhti2EnVwGybSD2Dxmhxk3IPCkhKAK+pl0eWYGZWG3tJ9mZ7SowcXLWDFAk0lRJnKGFMTggrWjV8GYpw5bq23VmIqqDLgkNzuoog==

idea 2019.1 无限试用删除key

image-20230917150710712

idea 2020.1.1破解

IntelliJ IDEA 2020.1.1 破解

破解

百度网盘 : https://pan.baidu.com/s/1Er1bSPsAj7NkmwH0Q9ONAA 提取码:ytld

1、选择试用启动idea

2、进入或解压文件里面的压缩包,进入lib文件夹

3、直接将jar文件用鼠标拖进idea界面,然后一路重启或者确定,中间出现什么拖放失败不用理会,直接点确定就好是正常现象。

4、直接点击为IDEA安装

5、重启之后一般情况下就已经破解完成,不需要再改配置文件,点击Help->Register查看是否成功破解

6、里面的激活码是重启之上自动填入的,如果不行找到下载的压缩文件lib下的ACTIVATION_CODE.txt换一个激活码或者查看README.pdf帮助。

idea 2020.2 安装破解

idea 2020.2 安装破解

1.官网下载最新版

2.https://zhile.io下载最新版jetbrains-agent-latest.zip

3.安装

image-20230917150720067

一路next

4.破解

  • jetbrains-agent-latest.zip复制到桌面
  • 拖到idea界面
  • 安装参数在”安装参数.txt”

image-20230917150751625

image-20230917150756496

重启即可

5.问题

idea 一直卡在reading pom.xml状态,求解决

  • 我是开了 VPN直接就搞定了

pre-built jdk shared indexes reduce the indexing time and cpu laod load  是啥?

  • 预构建jdk索引,构建索引会快一点,可以下载

idea 2020.3.2~2021.3破解

idea 2020.3.2破解

博客

1
也挺好用的,商店里添加知了大佬的插件库(https://plugins.zhile.io),直接安装(IDE Eval Reset).然后勾选每次都重启。本来以为会卡顿.目前没有发现什么卡顿的 

QQ

  • 阿里渣渣Java开发组

使用的是 BetterIntelliJ-1.16.jar + key

1
2
3
4
5
6
1.创建一个空的工程
2.将BetterIntelliJ-1.16.jar拖入项目
3.重启ide
4.help -> register -> 输入 key code,激活
5.查看.激活到99年
6.关闭ide自动更新!!

注意,亲测破解idea可以,然后下载了pycharm,照着上面步骤来一遍就行了。

ps:为了避免可能出现的问题。我idea 和pycharm下载版本我都是2020.3.2.不同版本没有做测试。

:date: 2021年12月6日23:06:45

更新到2021.3  ===> emmmmm.手贱

需要登录了,登录后还报错了

image-20230917150933692

删除jvm配置文件中的路径等

image-20230917150941225

:date: 2022年2月10日20:43:21

idea 2023.1 ja-netfilter方案

更新ja-netfilter方案

2021.3后,重置插件可以卸载了。

https://github.com/ja-netfilter 下载jar

https://github.com/ja-netfilter/plugin-mymap 下载插件

conf下编写mymap.conf

1
2
3
4
[MyMap] 
EQUAL,licenseeName->baipiaozhenxiang 
EQUAL,gracePeriodDays->100000 
EQUAL,paidUpTo->2025-10-13

idea64.exe.vmoptions

1
-javaagent:D:\tools\ja-netfilter-v2.2.3\ja-netfilter\ja-netfilter.jar

搞定

:date: 2022年2月19日10:32:30 

失效了

从这里下载包,按照readme.txt,激活成功。码子哥:https://jetbra.in/c6d70b01-3b1d-4710-9291-d01d9944574b.html

更多激活码:http://jets.idejihuo.com/

idea 破解 | 探针技术

javaagent 

从idea破解jar包看待技术

  • Java Agent 非硬编码式代理类,这也就是常说的探针技术

  • ASM 字节码编程简单使用

  • 工程打包额外加载其他 jar 方法

  • java agent

1
在 JDK1.5 以后,JVM 提供了 agent 技术构建一个独立于应用程序的代理程序(即为Agent),用来协助监测、运行甚至替换其他JVM上的程序。使用它可以实现虚拟机级别的AOP功能。
  • asm
1
ASM 是一个 JAVA 字节码分析、创建和修改的开源应用框架。在 ASM 中提供了诸多的API用于对类的内容进行字节码操作的方法。与传统的 BCEL 和 SERL 不同,在 ASM 中提供了更为优雅和灵活的操作字节码的方式。目前 ASM 已被广泛的开源应用架构所使用,例如:Spring、Hibernate 等。

idea 激活 | 过期重新试用

过期重新执行该文件即可

reset_jetbrains_eval_windows.vbs

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
26
27
28
29
30
31
32
33
34
Set oShell = CreateObject("WScript.Shell")
Set oFS = CreateObject("Scripting.FileSystemObject")
sHomeFolder = oShell.ExpandEnvironmentStrings("%USERPROFILE%")
sJBDataFolder = oShell.ExpandEnvironmentStrings("%APPDATA%") + "\JetBrains"

Set re = New RegExp
re.Global     = True
re.IgnoreCase = True
re.Pattern    = "\.?(IntelliJIdea|GoLand|CLion|PyCharm|DataGrip|RubyMine|AppCode|PhpStorm|WebStorm|Rider).*"

Sub removeEval(ByVal file, ByVal sEvalPath)
    bMatch = re.Test(file.Name)
    If Not bMatch Then
        Exit Sub
    End If

    If oFS.FolderExists(sEvalPath) Then
        oFS.DeleteFolder sEvalPath, True
    End If
End Sub

If oFS.FolderExists(sHomeFolder) Then
    For Each oFile In oFS.GetFolder(sHomeFolder).SubFolders
        removeEval oFile, sHomeFolder + "\" + oFile.Name + "\config\eval"
    Next
End If

If oFS.FolderExists(sJBDataFolder) Then
    For Each oFile In oFS.GetFolder(sJBDataFolder).SubFolders
        removeEval oFile, sJBDataFolder + "\" + oFile.Name + "\eval"
    Next
End If

MsgBox "done"

idea edu邮箱注册使用

idea edu邮箱注册使用

1
美国西南学院(Southwestern College)edu邮箱注册教程。edu邮箱可以申请无限容量的Google Drive网盘,当然还有很多其他用途.比如idea免费使用
  • 先准备个美国身份证,这个就可以借助工具随机生成一个,将个人信息保存下来。
    • 生成地址:

image-20230917151007138

  • 2、注册一个OpenCCC帐户,注册过程最好全程挂梯子,最后会要你设置账户和密码。

    注册地址:https://www.opencccapply.net/uPortal/AccountCreation

    注意:在注册第2步,Permanent Address选项填的无家可归,不知道对申请有不有加成,反正最后是通过了。

idea 2022.3.1(亲测可用)

下载:

jetbrain全家桶在2022.2版本默认启用Java17,所以vmoptions文件需要多加2行代码:

1
2
--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED
--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED

基于power插件

简单粗暴的屠龙刀(指对非对称加密),不需要再关注别人的公众号到处找注册码了。后续升级也没有问题

配置方法如下:

  • 编辑IDEA的vmpotions,Mac的路径如下(其他系统自行百度搜位置)
1
2
3
4
5
6
D:\tools\jetbrains\idea\idea2022.3.1\bin\idea.vmoptions

# 添加以下内容
-javaagent:D:\coder\open\idea\ja-netfilter-all\ja-netfilter.jar
--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED
--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED

配置完成后就可以准备激活IDEA了。这里有两种从激活方式,一种是用注册码,另一种是使用服务器激活,鉴于评论区很多小伙伴说服务器因为网络问题不太稳定,建议大家优先用注册码方式。

注册码激活

插件仓库已经更新了,之前就下载过的需要重新拉下代码,不然会激活失败。

这种方法的优点是不用担心网络问题导致的激活失败。缺点是各产品注册码不通用,得去找挨个找。

打开IDEA后直接去下面的网站找对应产品的注册码即可:

https://jetbra.in/s

image-20230917151057113

服务器激活

这种方法的优点是用这个方式能永久激活所有JetBrain家产品,不用挨个找激活码了。缺点是评论区部分网友遇到的网络问题,不过我目前还没遇到所以依然一直在用这种方式

打开IDEA,选服务器激活,地址输入https://jetbra.in,点击激活即可

image-20230917151128272

至此激活就完成了,没有过期时间 没有版本限制

基于拦截器 & mymap插件(推荐)

2023年6月20日23点14分 亲测可用

这个方案就是作者github直接提到的那个方案,大家只需要找一个可用的激活码完成初次激活,进入IDEA之后再用拦截器屏蔽掉程序用来验证的URL地址即可

由于网上公开的注册码很容易被封杀或过期,所以还需要配合一个叫做mymap的插件来修改一下返回的数据包,使原本过期的激活码能够继续使用

具体URL和DNS的拦截器这里就不赘述了,大家可以去官方仓库看教程:https://github.com/ja-netfilter/plugin-power

mymap插件官方没有内置,可以在这里下载:https://github.com/zfkun/ja-netfilter-mymap-plugin

配置文件可以这么写(第一行是显示的名字,第二行是宽限天数,第三行是过期时间 不建议改太大,容易引起报错):

1.将backup\plugins\mymap.jar拷贝到all\plugins-jetbrains

2.在all\config-jetbrains创建mymap.conf

1
2
3
4
[MyMap] 
EQUAL,licenseeName->test
EQUAL,gracePeriodDays->100000
EQUAL,paidUpTo->2025-10-13

3.配置:在D:\tools\jetbrains\idea\idea2022.3.1\bin\idea.vmoptions添加配置

1
2
3
4
# 添加以下内容
-javaagent:D:\coder\open\idea\ja-netfilter-all\ja-netfilter.jar
--add-opens=java.base/jdk.internal.org.objectweb.asm=ALL-UNNAMED
--add-opens=java.base/jdk.internal.org.objectweb.asm.tree=ALL-UNNAMED

4.双击all\scripts\install-current-user.vbs

5.在idea输入从https://jetbra.in/s找到的激活码(这个是中转站,上面的网站都是激活码网站,点击就行)

这种方式相对第一个需要改动的配置更多,而且需要自己找一个仅过期但未被封禁的激活码,这里提供一个:

1
R7FP0YWA38-eyJsaWNlbnNlSWQiOiJSN0ZQMFlXQTM4IiwibGljZW5zZWVOYW1lIjoi5rC45LmF5r+A5rS7IHd3d8K3YWppaHVvwrdjb20iLCJhc3NpZ25lZU5hbWUiOiIiLCJhc3NpZ25lZUVtYWlsIjoiIiwibGljZW5zZVJlc3RyaWN0aW9uIjoiIiwiY2hlY2tDb25jdXJyZW50VXNlIjpmYWxzZSwicHJvZHVjdHMiOlt7ImNvZGUiOiJEUE4iLCJwYWlkVXBUbyI6IjIwMjItMDEtMDkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IkRCIiwicGFpZFVwVG8iOiIyMDIyLTAxLTA5IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJQUyIsInBhaWRVcFRvIjoiMjAyMi0wMS0wOSIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiSUkiLCJwYWlkVXBUbyI6IjIwMjItMDEtMDkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlJTQyIsInBhaWRVcFRvIjoiMjAyMi0wMS0wOSIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJHTyIsInBhaWRVcFRvIjoiMjAyMi0wMS0wOSIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiRE0iLCJwYWlkVXBUbyI6IjIwMjItMDEtMDkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlJTRiIsInBhaWRVcFRvIjoiMjAyMi0wMS0wOSIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJEUyIsInBhaWRVcFRvIjoiMjAyMi0wMS0wOSIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiUEMiLCJwYWlkVXBUbyI6IjIwMjItMDEtMDkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlJDIiwicGFpZFVwVG8iOiIyMDIyLTAxLTA5IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJDTCIsInBhaWRVcFRvIjoiMjAyMi0wMS0wOSIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiV1MiLCJwYWlkVXBUbyI6IjIwMjItMDEtMDkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlJEIiwicGFpZFVwVG8iOiIyMDIyLTAxLTA5IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJSUzAiLCJwYWlkVXBUbyI6IjIwMjItMDEtMDkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IlJNIiwicGFpZFVwVG8iOiIyMDIyLTAxLTA5IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJBQyIsInBhaWRVcFRvIjoiMjAyMi0wMS0wOSIsImV4dGVuZGVkIjpmYWxzZX0seyJjb2RlIjoiUlNWIiwicGFpZFVwVG8iOiIyMDIyLTAxLTA5IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IkRDIiwicGFpZFVwVG8iOiIyMDIyLTAxLTA5IiwiZXh0ZW5kZWQiOmZhbHNlfSx7ImNvZGUiOiJSU1UiLCJwYWlkVXBUbyI6IjIwMjItMDEtMDkiLCJleHRlbmRlZCI6ZmFsc2V9LHsiY29kZSI6IkRQIiwicGFpZFVwVG8iOiIyMDIyLTAxLTA5IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IlBEQiIsInBhaWRVcFRvIjoiMjAyMi0wMS0wOSIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJQV1MiLCJwYWlkVXBUbyI6IjIwMjItMDEtMDkiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUFNJIiwicGFpZFVwVG8iOiIyMDIyLTAxLTA5IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IlBQUyIsInBhaWRVcFRvIjoiMjAyMi0wMS0wOSIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJQQ1dNUCIsInBhaWRVcFRvIjoiMjAyMi0wMS0wOSIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJQR08iLCJwYWlkVXBUbyI6IjIwMjItMDEtMDkiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUFBDIiwicGFpZFVwVG8iOiIyMDIyLTAxLTA5IiwiZXh0ZW5kZWQiOnRydWV9LHsiY29kZSI6IlBSQiIsInBhaWRVcFRvIjoiMjAyMi0wMS0wOSIsImV4dGVuZGVkIjp0cnVlfSx7ImNvZGUiOiJQU1ciLCJwYWlkVXBUbyI6IjIwMjItMDEtMDkiLCJleHRlbmRlZCI6dHJ1ZX0seyJjb2RlIjoiUlMiLCJwYWlkVXBUbyI6IjIwMjItMDEtMDkiLCJleHRlbmRlZCI6dHJ1ZX1dLCJtZXRhZGF0YSI6IjAxMjAyMTEyMTBQUEFNMDAwMDA1IiwiaGFzaCI6IjI4ODIyNjIyLzA6MTIwMjIwNTMzOCIsImdyYWNlUGVyaW9kRGF5cyI6NywiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-uJfA8WRWAjdNzWN1PT6YM52QbKE0TyhDYa7LxAeGcoLEOeY10/Wp1GKMy1+pZPDxiSf4s8S7JpWxiAW9PRCBmdedauyUVakrcvCmUmXZrbKyg4LeGtz7ChjHhcfA0EHPj83436c9GPS/QBr9BF0HEtYFUJprb1vx+DME2kf0ltfGxz/q86FEJuIAlTrUYXCDMmMzMmjh2KvBL10VyPtKdbJIiIb54k95k6OE+UykfNvYSbBQXBmRUoh3IVFRdVumRJiSE4tPcM9LMv3zANLhQjUbNctGsma58cb5BXEvaVNLJTmEY49exjcxcmVYdO3KyBx56U+zGfBoczaqwzV13A==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDCP4uk4SlVdA5nuA3DQC+NsEnZS9npFnO0zrmMWcz1++q2UWJNuGTh0rwi+3fUJIArfvVh7gNtIp93rxjtrQAuf4/Fa6sySp4c32MeFACfC0q+oUoWebhOIaYTYUxm4LAZ355vzt8YeDPmvWKxA81udqEk4gU9NNAOz1Um5/8LyR8SGsSc4EDBRSjcMWMwMkYSauGqGcEUK8WhfplsyF61lKSOFA6VmfUmeDK15rUWWLbOMKgn2cxFA98A+s74T9Oo96CU7rp/umDXvhnyhAXSukw/qCGOVhwKR8B6aeDtoBWQgjnvMtPgOUPRTPkPGbwPwwDkvAHYiuKJ7Bd2wH7rAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBAB2J1ysRudbkqmkUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/wi9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw5kbn1dqfBw1BuTE29V2FJKicJSu8iEOpfoafwJISXmz1wnnWL3V/0NxTulfWsXugOoLfv0ZIBP1xH9kmf22jjQ2JiHhQZP7ZDsreRrOeIQ/c4yR8IQvMLfC0WKQqrHu5ZzXTH4NO3CwGWSlTY74kE91zXB5mwWAx1jig+UXYc2w4RkVhy0//lOmVya/PEepuuTTI4+UJwC7qbVlh5zfhj8oTNUXgN0AOc+Q0/WFPl1aw5VV/VrO8FCoB15lFVlpKaQ1Yh+DVU8ke+rt9Th0BCHXe0uZOEmH0nOnH/0onD

因此也导致了一个问题:部分收费插件在网上找不到公开的可用激活码,这些插件就无法使用,所以还是建议用第一种

idea 安装、配置、使用

IntelliJ IDEA 介绍

JetBrains 公司介绍

IDEA(https://www.jetbrains.com/idea/)是 JetBrains 公司的产品,公司旗下还有其它产品,比如:

  • WebStorm:用于开发 JavaScript、HTML5、CSS3 等前端技术;
  • PyCharm:用于开发 python
  • PhpStorm:用于开发 PHP
  • RubyMine:用于开发 Ruby/Rails
  • AppCode:用于开发 Objective - C/Swift
  • CLion:用于开发 C/C++
  • DataGrip:用于开发数据库和 SQL
  • Rider:用于开发.NET
  • GoLand:用于开发 Go
  • Android Studio:用于开发 android(google 基于 IDEA 社区版进行迭代)

image-20230917151242799

IntelliJ IDEA 介绍

IDEA,全称 IntelliJ IDEA,是 Java 语言的集成开发环境,IDEA 在业界被公认为是最好的 java 开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、Ant、JUnit、CVS 整合、代码审查、创新的 GUI 设计等方面的功能可以说是超常的。IDEA 是 JetBrains 公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版本还支持 HTML,CSS,PHP,MySQL,Python 等。

IntelliJ IDEA 在 2015 年的官网上这样介绍自己:

Excel at enterprise, mobile and web development with Java, Scala and Groovy,with all the latest modern technologies and frameworks available out of thebox.

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

IDEA 的主要功能介绍

语言支持上:

image-20230917151250210

其他支持:

image-20230917151256064

IDEA 的特色功能

  • 智能的选取:在很多时候我们要选取某个方法,或某个循环或想一步一步从一个变量到整个类慢慢扩充着选取,IDEA就提供这种基于语法的选择,在默认设置中 Ctrl + W,可以实现选取范围的不断扩充,这种方式在重构的时候尤其显得方便。
  • 丰富的导航模式:IDEA 提供了丰富的导航查看模式,例如 Ctrl + E 显示最近打开过的文件,Ctrl + N 显示你希望显示的类名查找框(该框同样有智能补充功能,当你输入字母后IDEA将显示所有候选类名)。在最基本的 Project 视图中,你还可以选择多种的视图方式。
  • 历史记录功能:不用通过版本管理服务器,单纯的 IDEA 就可以查看任何工程中文件的历史记录,在版本恢复时你可以很容易的将其恢复。
  • JUnit 的完美支持
  • 对重构的优越支持:IDEA 是所有 IDE 中最早支持重构的,其优秀的重构能力一直是其主要卖点之一。
  • 编码辅助:Java 规范中提倡的 toString()、hashCode()、equals() 以及所有的 get/set 方法,你可以不用进行任何的输入就可以实现代码的自动生成,从而把你从无聊的基本方法编码中解放出来。
  • 灵活的排版功能:基本所有的 IDE 都有重排版功能,但仅有 IDEA 的是人性的,因为它支持排版模式的定制,你可以根据不同的项目要求采用不同的排版方式。
  • XML 的完美支持:XML 全提示支持:所有流行框架的 XML 文件都支持全提示,谁用谁知道。
  • 动态语法检测:任何不符合 Java 规范、自己预定义的规范、累赘都将在页面中加亮显示。
  • 代码检查:对代码进行自动分析,检测不符合规范的,存在风险的代码,并加亮显示。
  • 对 JSP 的完全支持:不需要任何的插件,完全支持 JSP。
  • 智能编辑:代码输入过程中,自动补充方法或类。
  • EJB 支持:不需要任何插件完全支持 EJB(6.0 支持 EJB 3.0)
  • 列编辑模式:用过 UtralEdit 的肯定对其的列编辑模式赞赏不已,因为它减少了很多无聊的重复工作,而 IDEA 完全支持该模式,从而更加提高了编码效率。
  • 预置模板:预置模板可以让你把经常用到的方法编辑进模板,使用时你只用输入简单的几个字母就可以完成全部代码的编写。例如使用比较高的 public static void main(String[] args){} 你可以在模板中预设 pm 为该方法,输入时你只要输入 pm 再按代码辅助键,IDEA 将完成代码的自动输入。
  • 完美的自动代码完成:智能检查类中的方法,当发现方法名只有一个时自动完成代码输入,从而减少剩下代码的编写工作。
  • 版本控制完美支持:集成了目前市面上常见的所有版本控制工具插件,包括 git、svn、github,让开发人员在编程的工程中直接在 Intellij IDEA 里就能完成代码的提交、检出、解决冲突、查看版本控制服务器内容等等。
  • 不使用代码的检查:自动检查代码中不使用的代码,并给出提示,从而使代码更高效。
  • 智能代码:自动检查代码,发现与预置规范有出入的代码给出提示,若程序员同意修改自动完成修改。例如代码:String str = “Hello Intellij “ + “IDEA”; IDEA 将给出优化提示,若程序员同意修改 IDEA 将自动将代码修改为:String str = “Hello Intellij IDEA”;
  • 正则表达式的查找和替换功能:查找和替换支持正则表达式,从而提高效率。
  • JavaDoc 预览支持:支持 JavaDoc 的预览功能,在 JavaDoc 代码中 Ctrl + Q 显示 JavaDoc 的结果,从而提高 DOC 文档的质量。
  • 程序员意图支持:程序员编码时 IDEA 时时检测你的意图,或提供建议,或直接帮你完成代码

IDEA 的主要优势(对比Eclipse)

  • ① 强大的整合能力。比如:Git、Maven、Spring 等
  • ② 提示功能的快速、便捷
  • ③ 提示功能的范围广

image-20230917151304965

  • ④ 好用的快捷键和代码模板 private static final psf
  • ⑤ 精准搜索

IDEA 的下载地址(官网)

https://www.jetbrains.com/idea/download/#section=windows

IDEA 分为两个版本:**旗舰版(Ultimate)和社区版(Community)**。

旗舰版收费(限 30 天免费试用),社区版免费,这和 Eclipse 有很大区别。

image-20230917151313764

这里提供了不同操作系统下的两个不同版本的安装文件。

两个不同版本的详细对比,可以参照官网:

https://www.jetbrains.com/idea/features/editions_comparison_matrix.html

官网提供的详细使用文档

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

windows 下安装过程

安装前的准备

硬件要求(Hardware requirements)

image-20230917151323568

个人建议配置:内存 8G 或以上,CPU 最好 i5 以上,最好安装块固态硬盘(SSD),将IDEA安装在固态硬盘上,这样流畅度会加快很多。

软件要求(Software requirements)

操作系统:Microsoft Windows 10/8/7/Vista/2003/XP (32 or 64 bit)

软件环境:

image-20230917151333447

注意:这里如果没有安装 JDK 的话,请参考 JDK 8 的安装与配置进行安装配置。

具体安装过程

双击:

image-20230917151340851

image-20230917151344781

image-20230917151348420

image-20230917151353131

  • 确认 32 位版还是 64 位版
  • 确认是否与.java、.groovy、.kt 格式文件进行关联,这里也可以选择不关联。

image-20230917151402419

image-20230917151406821

image-20230917151411681

安装总结

从安装上来看,IntelliJ IDEA 对硬件的要求似乎不是很高。可是实际在开发中其实并不是这样的,因为 IntelliJ IDEA 执行时会有大量的缓存、索引文件,所以如果你正在使用 Eclipse / MyEclipse,想通过 IntelliJ IDEA 来解决计算机的卡、慢等问题,这基本上是不可能的,本质上你应该对自己的硬件设备进行升级

查看安装目录结构

image-20230917151419300

image-20230917151427050

其中:bin 目录下:

image-20230917151434981

这里以我的电脑系统(64 位 windows7,16G 内存)为例,说明一下如何调整 VM 配置文件:

image-20230917151442484

  1. 大家根据电脑系统的位数,选择 32 位的 VM 配置文件或者 64 位的 VM 配置文件

  2. 32 位操作系统内存不会超过 4G,所以没有多大空间可以调整,建议不用调整了

  3. 64 位操作系统中 8G 内存以下的机子或是静态页面开发者是无需修改的。

  4. 64 位操作系统且内存大于 8G 的,如果你是开发大型项目、Java 项目或是 Android 项目,建议进行修改,常修改的就是下面 3 个参数:

image-20230917151450796

查看设置目录结构

image-20230917151510436

这是 IDEA 的各种配置的保存目录。这个设置目录有一个特性,就是你删除掉整个目录之后,重新启动 IntelliJ IDEA 会再自动帮你生成一个全新的默认配置,所以很多时候如果你把 IntelliJ IDEA 配置改坏了,没关系,删掉该目录,一切都会还原到默认。

config 目录

config 目录是 IntelliJ IDEA 个性化化配置目录,或者说是整个 IDE 设置目录。此目录可看成是最重要的目录,没有之一,如果你还记得安装篇的介绍的时候,安装新版本的 IntelliJ IDEA 会自动扫描硬盘上的旧配置目录,指的就是该目录。

这个目录主要记录了:IDE 主要配置功能、自定义的代码模板、自定义的文件模板、自定义的快捷键、Project 的 tasks 记录等等个性化的设置。 比如:

image-20230917151603702

system 目录

system 目录是 IntelliJ IDEA 系统文件目录,是 IntelliJ IDEA 与开发项目一个桥梁目录,里面主要有:缓存、索引、容器文件输出等等,虽然不是最重要目录,但也是最不可或缺的目录之一。比如:

image-20230917151610529

启动应用后简单配置

是否导入已有设置

首次启动,会弹出如下的对话框。选择不导入已有的设置。

image-20230917151626245

激活

然后根据提供的激活文档《IDEA2017-2018_激活方法》或百度:idea 破解码,填入:lisence server 的具体值即可。(需要联网)或者 选择 Activation code,根据文档提供的激活码,同样可以激活。(不需要联网)

image-20230917151634682

补充:

对于 IDEA 2017.3 月版本,需要按照如下的方式激活:

方式一:

启动:idea_active_proxy 激活代理.exe

接着,启动 IDEA:输入 server: http://localhost:8888,然后可以关闭idea_active_proxy 工具。

方式二:淘宝,你懂的

设置主题

image-20230917151642584

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

设置插件

image-20230917151648612

image-20230917151651694

设置 IDEA 中的各种插件,可以选择自定义设置、删除,或者安装本身不存在的插件(比如:支持 Scala 的插件)。这里不设置,后面也可以通过界面菜单栏的settings 进行设置。

IDEA 插件官方下载地址:https://plugins.jetbrains.com/idea

启动页面

image-20230917151659303

创建 Java 工程

创建 Java 工程

image-20230917151706446

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

这里选择 Create New Project,需要明确一下概念:

IntelliJ IDEA 没有类似 Eclipse 的工作空间的概念(Workspaces),最大单元就是Project。这里可以把 Project 理解为 Eclipse 中的 Workspace。

image-20230917151716051

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

如果要创建 Web 工程,则需要勾选上面的 Web Application。如果不需要创建 Web工程的话,则不需要勾选。这里先不勾选,只是创建简单的 Java 工程。

其中,选择 New:

选择 jdk 的安装路径所在位置:

image-20230917151725053

点击 OK 以后,选择 Next:

image-20230917151732746

这里不用勾选。选择 Next,进入下一个页面:

image-20230917151739386

给创建的工程起一个名字,点击 finish。

image-20230917151746333

点击 OK 即可。

设置显示常见的视图

image-20230917151753186

调出工具条和按钮组

工程界面展示

image-20230917151759506

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

创建 package class

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

image-20230917151807213

image-20230917151810735

在包下 new-class:

image-20230917151831564

image-20230917151835969

不管是创建 class,还是 interface,还是 annotation,都是选择 new – java class,然后在下拉框中选择创建的结构的类型。

接着在类 HelloWorld 里声明主方法,输出 helloworld,完成测试。

image-20230917151845153

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

创建模块(Module)

  1. 在 Eclipse 中我们有 Workspace(工作空间)和 Project(工程)的概念,在 IDEA中只有 Project(工程)和 Module(模块)的概念。这里的对应关系为:

image-20230917151854308

这个地方刚开始用的时候会很容易理不清它们之间的关系。

  1. 从 Eclipse 转过来的人总是下意识地要在同一个窗口管理 n 个项目,这在IntelliJ IDEA 是无法做到的。IntelliJ IDEA 提供的解决方案是打开多个项目实例,即打开多个项目窗口。即:一个 Project 打开一个 Window 窗口。

  2. 在 IntelliJ IDEA 中 Project 是最顶级的级别,次级别是 Module。一个 Project可以有多个 Module。目前主流的大型项目都是分布式部署的,结构都是类似这种多 Module 结构。

image-20230917151902061

这类项目一般是这样划分的,比如:core Module、web Module、plugin Module、

solr Module 等等,模块之间彼此可以相互依赖。通过这些 Module 的命名也可

以看出,他们之间都是处于同一个项目业务下的模块,彼此之间是有不可分割的

业务关系的。举例:

image-20230917151908675

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

下面,我们演示如何创建 Module:

image-20230917151916385

image-20230917151920165

接着选择 Next:

image-20230917151929212

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

如何删除模块

image-20230917151936646

image-20230917151941320

image-20230917151945780

image-20230917151949196

此时的删除,会从硬盘上将此 module 删除掉。

查看项目配置

image-20230917151957414

进入项目结构:

image-20230917152005841

idea 创建javaweb项目

新建 Java Web 项目

打开 IDEA -> Create New Project

image-20230917152014491

选择 Java -> Java EE -> Web Application

image-20230917152021691

选择工作空间

项目命名后选择存放的工作空间,项目就创建完成了

image-20230917152031431

配置 JDK

选择 File -> Project Structure…

image-20230917152041324

选择 JDK 的安装路径即可

image-20230917152047964

配置 Tomcat

选择 Run -> Edit Configurations…

image-20230917152055060

选择 + 号 -> Tomcat Server -> Local

image-20230917152104637

选择 Tomcat 的安装路径即可

image-20230917152112153

配置 Tomcat 本地部署

继续上一步,选择 Deployment -> + 号 -> Artifact…

image-20230917152122805

image-20230917152127348

image-20230917152132750

ps: war 是将工程打包war包,到了tomcat还要解压。而war exploded是直接复制文件夹到tomcat,推荐使用war exploded

选择 Server 配置自动更新

image-20230917152143544

测试运行

选择需要运行的项目,点击 运行 图标

image-20230917152152474

浏览器打开:http://localhost:8080

常用配置

IntelliJ IDEA 有很多人性化的设置我们必须单独拿出来讲解,也因为这些人性化的设置让那些 IntelliJ IDEA 死忠粉更加死心塌地使用它和分享它。

进入设置界面:

image-20230917152200431

目录结构如下:

image-20230917152207128

Appearance & Behavior

设置主题

image-20230917152215998

这里默认提供了三套主题:IntelliJ,Darcula,Windows。这里可以根据自己的喜好进行选择。

设置窗体及菜单的字体及字体大小 (可忽略)

image-20230917152230078

补充:设置编辑区主题 (可忽略)

IDEA 默认提供了两个编辑区主题,可以通过如下的方式进行选择。

image-20230917152236531

  • 如果想要更多的主题效果的话,可以到如下的网站下载:
  • 下载以后,导入主题:(方式一)

file –> import setttings –> 选中下载的主题 jar 文件 –> 一路确认 –> 重启。

重启以后,新主题会自动启用。如果没有启用,可以如下方式选择:

image-20230917152243593

  • 下载以后,导入主题:(方式二)

image-20230917152252494

补充:通过插件(plugins)更换主题

喜欢黑色主题的话,还可以下载插件:Material Theme UI

image-20230917152259461

点击按钮以后,在联网环境下搜索如下的插件-安装-重启 IDEA 即可:

image-20230917152306149

如果对安装的主题插件不满意,还可以找到此插件,进行卸载 – 重启 IDEA 即可。

Editor - General

设置鼠标滚轮修改字体大小(可忽略)

image-20230917152313777

我们可以勾选此设置后,增加 Ctrl + 鼠标滚轮 快捷键来控制代码字体大小显示。

设置鼠标悬浮提示

image-20230917152325825

设置自动导包功能

image-20230917152335985

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

设置显示行号和方法间的分隔符

  • 如上图红圈所示,可以勾选 Show line numbers:显示行数。我建议一般这个要勾选上。
  • 如上图红圈所示,可以勾选 Show method separators: 显示方法分隔线。这种线有助于我们区分开方法,所以建议勾选上。

忽略大小写提示

image-20230917152345973

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

设置取消单行显示 tabs 的操作

image-20230917152353145

如上图标注所示,在打开很多文件的时候,IntelliJ IDEA 默认是把所有打开的文件名 Tab 单行显示的。但是我个人现在的习惯是使用多行,多行效率比单行高,因为单行会隐藏超过界面部分 Tab,这样找文件不方便。

Editor – Font

设置默认的字体、字体大小、字体行间距

image-20230917152400502

Editor – Color Scheme

修改当前主题的字体、字体大小、字体行间距(可忽略)

如果当前主题不希望使用默认字体、字体大小、字体行间距,还可以单独设置:

image-20230917152409869

修改当前主题的控制台输出的字体及字体大小(可忽略)

image-20230917152432685

修改代码中注释的字体颜色

image-20230917152442644

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

Editor – Code Style

设置超过指定 import 个数,改为(可忽略)

Editor – File and Code Templates

修改类头的文档注释信息

image-20230917152454286

image-20230917152458011

常用的预设的变量,这里直接贴出官网给的:

image-20230917152505087

Editor – File Encodings

设置项目文件编码

image-20230917152512128

说明:Transparent native-to-ascii conversion 主要用于转换 ascii,一般都要勾选,

不然 Properties 文件中的注释显示的都不会是中文。

设置当前源文件的编码(忽略)

image-20230917152518509

image-20230917152522922

对单独文件的编码修改还可以点击右下角的编码设置区。如果代码内容中包含中文,则会弹出如上的操作选择。其中:

①Reload 表示使用新编码重新加载,新编码不会保存到文件中,重新打开此文件,旧编码是什么依旧还是什么。

②Convert 表示使用新编码进行转换,新编码会保存到文件中,重新打开此文件,新编码是什么则是什么。

③含有中文的代码文件,Convert 之后可能会使中文变成乱码,所以在转换成请做好备份,不然可能出现转换过程变成乱码,无法还原。

Editor - File type

设置隐藏.iml.idea等自动生成的文件

image-20230917152530122

Build,Execution,Deployment

设置自动编译

image-20230917152539685

  • 构建就是以我们编写的 java 代码、框架配置文件、国际化等其他资源文件、JSP 页面和图片等资源作为“原材料”,去“生产”出一个可以运行的项目的过程。
  • Intellij Idea 默认状态为不自动编译状态,Eclipse 默认为自动编译:很多朋友都是从 Eclipse 转到 Intellij 的,这常常导致我们在需要操作 class 文件时忘记对修改后的 java 类文件进行重新编译,从而对旧文件进行了操作。

image-20230917152545653

设置为省电模式(可忽略)

image-20230917152554511

如上图所示,IntelliJ IDEA 有一种叫做 省电模式 的状态,开启这种模式之后IntelliJ IDEA 会关掉代码检查和代码提示等功能。所以一般也可认为这是一种 阅读模式,如果你在开发过程中遇到突然代码文件不能进行检查和提示,可以来看看这里是否有开启该功能。

设置代码水平或垂直显示

image-20230917152603071

Scala 相关

变量类型提示

settins –>Editor–> Code Style –> scala –Type Annotations 勾选框选部分

image-20230917152610434

效果:

image-20230917152616876

有更好的效果设置:

image-20230917152625094

效果:

image-20230917152632239

设置快捷键(Keymap)

设置快捷为 Eclipse 的快捷键

image-20230917152640118

通过快捷键功能修改快捷键设置

image-20230917152647502

通过指定快捷键,查看或修改其功能

image-20230917152655228

导入已有的设置

image-20230917152709335

image-20230917152705029

点击 0K 之后,重启 IDEA 即可。

常用快捷键

image-20230917152718833

image-20230917152726845

image-20230917152730890

提示快捷键

Idea的默认快捷键是 Ctrl + 空格

在KeyMap中找到Main menu –> Code –> Completion

  1. 移除原来的Cycle Expand Word 的 Alt+/(正斜杠) 快捷键绑定。
  2. 在 Basic 上点击右键,去除原来的 Ctrl+空格 绑定,然后添加 Alt + 斜杠 快捷键。

关于模板(Templates)

1
(Editor – Live Templates 和 Editor – General – Postfix Completion)

Live Templates(实时代码模板)功能介绍

它的原理就是配置一些常用代码字母缩写,在输入简写时可以出现你预定义的固定模式的代码,使得开发效率大大提高,同时也可以增加个性化。最简单的例子就是在 Java 中输入 sout 会出现 System.out.println();

官方介绍 Live Templates:

https://www.jetbrains.com/help/idea/using-live-templates.html

已有模板

Postfix Completion 默认如下:

image-20230917152741414

Live Templates 默认如下:

image-20230917152750417

二者的区别:Live Templates 可以自定义,而 Postfix Completion 不可以。同时,有些操作二者都提供了模板,Postfix Templates 较 Live Templates 能快 0.01 秒

举例:

  • **psvm :**可生成 main 方法

  • sout : System.out.println() 快捷输出

类似的:

1
2
3
4
5
6
7
soutp=System.out.println("方法形参名 = " + 形参名);

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

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

“abc”.sout => System.out.println("abc");
  • fori : 可生成 for 循环

类似的:

iter:可生成增强 for 循环

itar:可生成普通 for 循环

  • **list.for : **可生成集合 list for 循环
1
2
3
4
5
6
7
8
9
List list = new ArrayList();

输入: list.for 即可输出

for(String s:list){

}

又如:list.fori 或 list.forr
  • ifn:可生成 if(xxx = null)

类似的:

1
inn:可生成 if(xxx != null) 或 xxx.nn 或 xxx.null
  • prsf:可生成 private static final

类似的:

1
2
3
4
5
psf:可生成 public static final

psfi:可生成 public static final int

psfs:可生成 public static final String

**修改已有模板 **

如果对于现有的模板,感觉不习惯、不适应的,可以修改:

修改 1:

通过调用 psvm 调用 main 方法不习惯,可以改为跟 Eclipse 一样,使用 main 调取。

image-20230917152810629

修改 2:

image-20230917152821383

类似的还可以修改 psfs。

自定义模板

IDEA 提供了很多现成的 Templates。但你也可以根据自己的需要创建新的Template。

image-20230917152828419

先定义一个模板的组:

image-20230917152834911

image-20230917152838359

选中自定义的模板组,点击”+”来定义模板。

image-20230917152844298

  1. Abbreviation:模板的缩略名称

  2. Description:模板的描述

  3. Template text:模板的代码片段

  4. 应用范围。比如点击 Define。选择如下:

image-20230917152850946

可以如上的方式定义个测试方法,然后在 java 类文件中测试即可。

类似的可以再配置如下的几个 Template:

image-20230917152857497

image-20230917152907878

创建 Java Web Project Module

创建静态 Java Web

image-20230917152919101

image-20230917152924382

**创建动态 **Java Web

创建动态 Web module

工程栏空白处 new – module:

image-20230917152930449

image-20230917152935209

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

image-20230917152942534

提供 Web 工程名。这里注意修改一下 Content root 和 Module file location。

创建以后的工程结构如下:

image-20230917152949923

打开 index.jsp。修改为如下内容。这里你会发现 IDEA 的代码提示功能要强于Eclipse

image-20230917152956619

配置 Tomcat

在 IDEA 中配置 Tomcat 之前,需要保证已经安装并配置了 Tomcat 的环境变量。如果没有安装并配置,可以参考 Tomcat 快速部署,配置完成以后,在命令行输入:catalina run 。能够启动 tomcat,则证明安装配置成功。

下面看如何在 IDEA 中配置:

image-20230917153002862

点击 Edit Configurations:

image-20230917153007993

这里选择 TomEE Server 或者 Tomcat Server 都可以。接着选择 Local。

image-20230917153015202

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

image-20230917153024282

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

接着部署:

image-20230917153031763

image-20230917153035363

点击 OK 即可。此时:

image-20230917153041449

执行刚才创建的 index.jsp 即可:

image-20230917153048513

效果如下:

image-20230917153054550

注意事项:

显示运行以后的 Tomcat 的信息:

image-20230917153102469

可以点击红框,刚点击完毕并不能马上关闭服务器,只是断开了与服务器的连接,稍后当停止按钮显示为灰色,才表示关闭。

关联数据库

关联方式

image-20230917153109998

image-20230917153113624

image-20230917153118877

表面上很多人认为配置 Database 就是为了有一个 GUI 管理数据库功能,但是这并不是 IntelliJ IDEA 的 Database 最重要特性。数据库的 GUI 工具有很多,IntelliJ IDEA 的 Database 也没有太明显的优势。IntelliJ IDEA 的 Database 最大特性就是对于 Java Web 项目来讲,常使用的 ORM 框架,如 Hibernate、Mybatis有很好的支持,比如配置好了 Database 之后,IntelliJ IDEA 会自动识别 domain对象与数据表的关系,也可以通过 Database 的数据表直接生成 domain 对象等等。

常用操作

image-20230917153126920

image-20230917153130134

版本控制(Version Control)

不管是个人开发还是团队开发,版本控制都会被使用。而 IDEA 也很好的集成了版本控制的相关结构。

image-20230917153137338

很多人认为 IntelliJ IDEA 自带了 SVN 或是 Git 等版本控制工具,认为只要安装了 IntelliJ IDEA 就可以完全使用版本控制应有的功能。这完全是一种错误的解读,IntelliJ IDEA 是自带对这些版本控制工具的插件支持,但是该装什么版本控制客户端还是要照样装的。

image-20230917153149135

  • IntelliJ IDEA 对版本控制的支持是以插件化的方式来实现的。旗舰版默认支持目前主流的版本控制软件:CVS、Subversion(SVN)、Git、Mercurial、Perforce、TFS。又因为目前太多人使用 Github 进行协同或是项目版本管理,所以 IntelliJ IDEA 同时自带了 Github 插件,方便 Checkout 和管理你的Github 项目。
  • 在实际开发中,发现在 IDEA 中使用 SVN 的经历不算愉快,经常会遇到很多问题,比如紧急情况下 IDEA 无法更新、提交等。所以这里,谈下在 IDEA中使用 Git。

提前安装好 Git 的客户端

Git 的 msysGit 官网下载:https://git-scm.com/

Git 客户端 TortoiseGit 官网下载:http://download.tortoisegit.org/tgit/

关联 git.exe

image-20230917153157819

GitHub 登录账户测试连接

image-20230917153206229

GitHub 创建新的仓库

image-20230917153223493

Github 直接 Checkout 项目

image-20230917153235763

GitHub clone 仓库

image-20230917153243180

这里需要在 GitHub 的自己的账户下,复制项目仓库路径,填写到上图 Git Repository URL 中。如下:

image-20230917153248806

Github 连接后下载项目

image-20230917153255577

image-20230917153259592

image-20230917153303041

根据自己的需要,选择本窗口,还是开启一个新的窗口。

GitHub VCS方式连接

image-20230917153309460

本地代码分享到 GitHub

image-20230917153319420

image-20230917153323354

此时会在 GitHub 上创建一个新的仓库,而非更新已经存在的仓库。

Git 的常用操作

image-20230917153330275

image-20230917153333690

没有使用 Git 时本地历史记录的查看

image-20230917153341348

image-20230917153345133

即使我们项目没有使用版本控制功能,IntelliJ IDEA 也给我们提供了本地文件历史记录。

断点调试

Debug 目的

  1. debug的目的是什么: 观察代码的执行过程
  2. 以debug模式运行项目
  3. 打断点,断点打在哪? 你想观察哪就打在哪
  4. 让有断点的那段代码执行,就会在断点处停下来(此时断点处那行代码是未执行的)
  5. 可以先观察自己想看的变量/对象: 可以将鼠标停留在你想观察的变量上
  6. 如果想要执行某行代码(跳到下一行:Step Over,快捷键是F8)
    如果你想观察某个方法内部是怎么执行的: 我会在方法内部再打一个断点,然后跳转到下一个断点(Resume Program,快捷键就是F10)
    如果debug观察完了,想让功能执行完,那么我们还是点击(Resume Program,快捷键就是F10)
  7. debug完成之后,一定要清除所有的断点

其它的一些操作:

  1. Step into 进入到某个方法中 , 快捷键是F7
  2. Step out 从某个方法中出来, 快捷键Shift + F8

Debug 的设置

image-20230917153354019

设置 Debug 连接方式,默认是 Socket。Shared memory 是 Windows 特有的一个属性,一般在 Windows 系统下建议使用此设置,内存占用相对较少。

常用断点调试快捷键

image-20230917153359778

对于常用的 Debug 的快捷键,需要大家熟练掌握。

条件断点

说明:

调试的时候,在循环里增加条件判断,可以极大的提高效率,心情也能愉悦。

具体操作:

在断点处右击调出条件断点。可以在满足某个条件下,实施断点。

查看表达式的值(Ctrl + u):

选择行,ctrl + u。还可以在查看框中输入编写代码时的其他方法:

image-20230917153406597

Debug查看求和

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
使用步骤:
1.在代码的第一行左侧空白(行号后面)处单击鼠标左键,添加断点
2.右键选择"debug...",进入断点调试界面
public class Demo02DeBug {
public static void main(String[] args) {

System.out.println("main...start...");

method();

System.out.println("main...end...");
}

public static void method() {
for (int i = 1; i <= 5; i++) {
System.out.println(i);
}
return ;
}
}

image-20230917153418807

配置 Maven

Maven 的介绍

image-20230917153432642

Make -> Ant -> Maven -> Gradle

Maven 是 Apache 提供的一款自动化构建工具,用于自动化构建和依赖管理。

开发团队基本不用花多少时间就能自动完成工程的基础构建配置,因为 Maven

使用了一个标准的目录结构和一个默认的构建生命周期。在如下环节中,Maven

使得开发者工作变得更简单。

构建环节:

image-20230917153440491image-20230917153444430

Maven 的配置

maven 的下载 – 解压 – 环境变量的配置这里就赘述了,需要的参考 1-课件

中的《Maven 的配置》。下面直接整合 Maven。选择自己 Maven 的目录,和 settings

文件,然后配置自己的仓库 reposiroty。

image-20230917153458962

  • Maven home directory:可以指定本地 Maven 的安装目录所在,因为我已经配置了

  • User settings file / Local repository:我们还可以指定 Maven 的 settings.xml 位置和本地仓

image-20230917153505035

  • Import Maven projects automatically:表示 IntelliJ IDEA 会实时监控项目的 pom.xml 文件,
  • Automatically download:在 Maven 导入依赖包的时候是否自动下载源码和文档。默认是
  • VM options for importer:可以设置导入的 VM 参数。一般这个都不需要主动改,除非项

创建对应的 Module

image-20230917153511273

image-20230917153514393

举例:此时 Spring Initalizr 是 springboot 工程的模板。

image-20230917153522168

Group:组织或公司域名,倒序

Artifact:项目模块名称

Version:默认 maven 生成版本:0.0.1-SNAPSHOT

image-20230917153528074

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

image-20230917153534669

点击 finish 即可完成创建。

image-20230917153540788

创建完成以后,可以在 IDEA 右边看到创建的 Module。如果没有,可以刷新一下。

目录下也会有对应的生命周期。其中常用的是:clean、compile、package、install。

比如这里install,如果其他项目需要将这里的模块作为依赖使用,那就可以install。

安装到本地仓库的位置。

image-20230917153546796

其他操作这里不再赘述。

其它设置

生成 javadoc

image-20230917153554537

image-20230917153558017

输入:

image-20230917153605957

缓存和索引的清理

IntelliJ IDEA 首次加载项目的时候,都会创建索引,而创建索引的时间跟项目的文件多少成正比。在 IntelliJ IDEA 创建索引过程中即使你编辑了代码也是编译不了、运行不起来的,所以还是安安静静等 IntelliJ IDEA 创建索引完成。

IntelliJ IDEA 的缓存和索引主要是用来加快文件查询,从而加快各种查找、代码提示等操作的速度,所以 IntelliJ IDEA 的索引的重要性再强调一次也不为过。

但是,IntelliJ IDEA 的索引和缓存并不是一直会良好地支持 IntelliJ IDEA 的,某些特殊条件下,IntelliJ IDEA 的缓存和索引文件也是会损坏的,比如:断电、蓝屏引起的强制关机,当你重新打开 IntelliJ IDEA,很可能 IntelliJ IDEA 会报各种莫名其妙错误,甚至项目打不开,IntelliJ IDEA 主题还原成默认状态。即使没有断电、蓝屏,也会有莫名奇怪的问题的时候,也很有可能是 IntelliJ IDEA 缓存和索引出现了问题,这种情况还不少。遇到此类问题也不用过多担心。我们可以清理缓存和索引。如下:

image-20230917153615934

image-20230917153619328

  • 一般建议点击 Invalidate and Restart,这样会比较干净。
  • 上图警告:清除索引和缓存会使得 IntelliJ IDEA 的 Local History 丢失。所以如果你项目没
  • 通过上面方式清除缓存、索引本质也就是去删除 C 盘下的 system 目录下的对应的文件

取消更新

image-20230917153626668

取消勾选:即可取消更新

插件的使用

在 IntelliJ IDEA 的安装讲解中我们其实已经知道,IntelliJ IDEA 本身很多功能也都是通过插件的方式来实现的。

官网插件库:https://plugins.jetbrains.com/

image-20230917153636956

image-20230917153640214

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

image-20230917153647300

image-20230917153651146

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

常用插件推荐:

image-20230917153658420

有些设置只在当前项目有效果,注意这里也要设置

image-20230917153705379

idea 导出配置

image-20230917153719510

image-20230917153722423

说明,配置可以导出,插件无法导出,需要重新安装,最好截下图,新版本中重新安装下就可以了;

image-20230917153728619

idea 技巧

idea启用列模式

(1)alt+鼠标左键----实现的是几个连续列要向上或者向下拉,能够同时操作多行数据。

(2)Shift+alt+鼠标左键----可以实现点选跨行的列模式同时操作,而且不通行可以点选不通列,进行跨行异列同时进行列编辑。

idea设置方法注释(亲测有效)

1
2
3
4
5
6
7
8
9
/**
*
* @param id
* @param type
* @return
*/
public static String getName(Long id, int type) {
    return null;
}

使用Eclipse时我们生成注释的习惯是/**+Enter,这里我们也按照这种习惯来设置IDEA的方法注释

File-->Settings-->Editor-->Live Templates

image-20230917153737780

新建Template Group: 命名为 MethodBingtai

image-20230917153748122

在MethodBingtai下新建Live Template,命名为*

image-20230917153758339

image-20230917153802022

因为IDEA生成注释的默认方式是:/* +模板名+快捷键(比如若设置模板名为add快捷键用Tab,则生成方式为/*add+Tab),如果不采用这样的生成方式IDEA中没有内容的方法将不可用,例如获取方法参数的methodParameters()、获取方法返回值的methodReturnType()

设置注释的快捷键

image-20230917153808120

设置模板

模板内容如下:

1
2
3
4
5
6
7
8
*
* 功能描述:
* 〈$END$〉
* @Param: $param$
* @Return: $return$
* @Author: $user$
* @Date: $DATE$ $TIME$
*/

注意 第一行,只有一个* 而不是/*

在设置参数名时必须用$参数名$的方式,否则1.5中读取不到你设置的参数名

另一个模板:

1
2
3
4
5
6
7
8
9
10
11
12
13
/**     
*
* @ProjectName: ${PROJECT_NAME}
* @Package: ${PACKAGE_NAME}
* @ClassName: ${NAME}
* @Description: java类作用描述
* @Author: 徐明冠
* @CreateDate: ${DATE} ${TIME}
* @UpdateUser: 更新者
* @UpdateDate: ${DATE} ${TIME}
* @UpdateRemark: 更新说明
* @Version: 1.0
*/

设置参数的获取方式

选择右侧的Edit variables按钮

image-20230917153817568

选择每个参数对应的获取方法(在下拉选择框中选择即可),网上有很多教程说获取param时使用脚本的方式,我试过使用脚本的方式不仅麻烦而且只能在方法内部使用注释时才能获取到参数

image-20230917153824142

选择应用场景:勾选Java

image-20230917153830366

注意 点击模板页面最下方的警告,来设置将模板应用于那些场景,一般选择Java即可(如果曾经修改过,则显示为Change而不是Define)

再次选择右侧的Edit variables按钮,下拉框就有选项了;如下图,选中对应的Expression,点击OK

image-20230917153836304

效果

创建方法,在方法上一行,输入 /**,然后 回车

image-20230917153845880

参考: IDEA类和方法注释模板设置

idea 主题配色图

image-20230917153853875

image-20230917153857193

  • DarkBlue.jpg

image-20230917153909028

  • Heptica.jpg

image-20230917153919369

  • NotSoBright.jpg

image-20230917153927323

  • SolarizedLight (Alternate).jpg

Idea Live Templates 代码模板

程序员的工作不是写程序,而是写程序解决问题。

我们每天都在写代码,有些代码有结构性的相似,但不是所有的代码都可以被抽成方法。在这种情况下,我们应该考虑使用template的方式加快我们的开发速度。这篇文章会先介绍IntelliJ下已经有的一些code/live template,然后介绍如何自定义template。

IntelliJ 下已有的 template

Java 中,我们时常会遇到遍历一个 iterable 的情况。如下所示:

1
2
3
for (Integer item : items) {
//...
}

你可以选择一个字母,一个字母的敲,但是在 IntelliJ 下面,你只需要输入 iter 再按 TAB 键,就可以自动生成这个代码,和原来的代码比起来,你需要敲键盘的次数少了几倍。

image-20230917153936872

这个时候,红色的框框部分就是当前你的编辑区域,因为我之前有一个 items 的变量,这里 IntelliJ 会建议Iterable 是 items。如果你觉得不对也可以修改,确认后敲 Enter。

image-20230917153942830

敲了回车以后,就进入下一个编辑的部分,而不需要你手动的去移动光标。确实很 Intelligent 啊。

IntelliJ 中提供了很多现有的 Code/Live Template,你可以在 Settings 中找到这些已有的 template:

比如 sout 可以输出System.out.println(...), ifn 可以输入if (xxx == null)等等。学习这些 template,并且灵活运用,可以缩短你敲键盘的速度。

如何自定义 Live Template

IntelliJ 提供了很多现成的 template。但你也可以根据自己的需要创建新的 template。

如我们经常要写 logger 的定义:private static final Logger logger = LoggerFactory.getLogger(MyClass.class);,如果每次都手敲或复制是不是有点繁琐,这里就可以借用 sout 这种 Live Templates 实现快速代码编写。用好了这个功能,以后妈妈再也不用担心我们经常加班了。

Settings-->Editor-->Live Templates...

编写模板

image-20230917153953256

  • Abbreviation:模板的缩略名称,如 sout;

  • Template text:模板的代码片段,可以用自定义变量。

自定义变量

这里我们自定义了 CLASS 变量(使用时需要前后都加上**$**),但 Idea 并不识别,这就需要对自定义的变量进行编辑,Edit Variables。

image-20230917153959679

  • Name:我们的自定义变量名称;

  • Expression:变量替换表达式,这里我们使用了 Idea 模板支持的内置函数 className()表示类名,更多的内置函数参考:Creating and Editing Template Variables

  • Default value:表达式计算失败时的默认值。

设置应用范围

模板代码设置完后,我们还要设置其应用范围,即 loggerDefineStatic 在哪里会生效。

image-20230917154006558

这里,我们选择 loggerDefineStatic 在 Java 的声明里生效。

OK,到这里,loggerDefineStatic 的设置就算完成了,接下来就可以像 sout 一样使用了,是不是很帅!

image-20230917154013046

常用模板

loggerDefineStatic

1
2
private static final Logger logger = LoggerFactory.getLogger($CLASS_NAME$.class);
1)CLASS_NAME           className()

loggerDefineThis

1
private final Logger logger = LoggerFactory.getLogger(this.getClass());

logStart

1
2
3
4
5
logger.info("op=start_$METHOD_NAME$, $PARAMS_FORMAT$", $PARAMS$);

1)METHOD_NAME          methodName()
2)PARAMS_FORMAT        groovyScript("_1.collect{it+'={}'}.join(', ')", methodParameters())
3)PARAMS               groovyScript("_1.collect{it}.join(', ')", methodParameters())

idea 2020.1 体验 | 小技巧

IDEA 2020.1 体验

1、支持中文

Ctrl+ALT+S 打开 Settings - Plugins -> Chinese (官方汉化包)

image-20230917154022951

2.无需事先下载git,克隆的时候会先查询有无git,没有会提示安装

3.点击tab栏文件,目录也定位到当前文件

image-20230917154030414

idea 小技巧

Intellij IDEA神器居然还有这些小技巧

概述


Intellij IDEA真是越用越觉得它强大,它总是在我们写代码的时候,不时给我们来个小惊喜。出于对Intellij IDEA的喜爱,我决定写一个与其相关的专栏或者系列,把一些好用的Intellij IDEA技巧分享给大家。本文是这个系列的第一篇,主要介绍一些你可能不知道的但是又实用的小技巧。


我最爱的【演出模式】


我们可以使用【Presentation Mode】,将IDEA弄到最大,可以让你只关注一个类里面的代码,进行毫无干扰的coding。

可以使用Alt+V快捷键,弹出View视图,然后选择Enter Presentation Mode。效果如下:

image-20230917154038486

这个模式的好处就是,可以让你更加专注,因为你只能看到特定某个类的代码。可能读者会问,进入这个模式后,我想看其他类的代码怎么办?这个时候,就要考验你快捷键的熟练程度了。你可以使用CTRL+E弹出最近使用的文件。又或者使用CTRL+N和CTRL+SHIFT+N定位文件。

如何退出这个模式呢?很简单,使用ALT+V弹出view视图,然后选择Exit Presentation Mode 即可。但是我强烈建议你不要这么做,因为你是可以在Enter Presentation Mode模式下在IDEA里面做任何事情的。当然前提是,你对IDEA足够熟练。


神奇的Inject language


如果你使用IDEA在编写JSON字符串的时候,然后要一个一个\去转义双引号的话,就实在太不应该了,又烦又容易出错。在IDEA可以使用Inject language帮我们自动转义双引号。

image-20230917154046697

先将焦点定位到双引号里面,使用alt+enter快捷键弹出inject language视图,并选中

Inject language or reference。

image-20230917154054504

选择后,切记,要直接按下enter回车键,才能弹出inject language列表。在列表中选择 json组件。

image-20230917154059973

选择完后。鼠标焦点自动会定位在双引号里面,这个时候你再次使用alt+enter就可以看到

image-20230917154106519

选中Edit JSON Fragment并回车,就可以看到编辑JSON文件的视图了。

image-20230917154113923

可以看到IDEA确实帮我们自动转义双引号了。如果要退出编辑JSON信息的视图,只需要使用ctrl+F4快捷键即可。

Inject language可以支持的语言和操作多到你难以想象,读者可以自行研究。


使用快捷键移动分割线


假设有下面的场景,某个类的名字在project视图里被挡住了某一部分。

image-20230917154121515

你想完整的看到类的名字,该怎么做。一般都是使用鼠标来移动分割线,但是这样子效率太低了。可以使用alt+1把鼠标焦点定位到project视图里,然后直接使用ctrl+shift+左右箭头来移动分割线。


ctrl+shift+enter不只是用来行尾加分号的


ctrl+shift+enter其实是表示为您收尾的意思,不只是用来给代码加分号的。比如说:

image-20230917154130286

这段代码,我们还需要为if语句加上大括号才能编译通过,这个时候你直接输入ctrl+shift+enter,IDEA会自动帮你收尾,加上大括号的。


不要动不动就使用IDEA的重构功能


IDEA的重构功能非常强大,但是也有时候,在单个类里面,如果只是想批量修改某个文本,大可不必使用到重构的功能。比如说:

image-20230917154138438

上面的代码中,有5个地方用到了rabbitTemplate文本,如何批量修改呢?

首先是使用ctrl+w选中rabbitTemplate这个文本,然后依次使用5次alt+j快捷键,逐个选中,这样五个文本就都被选中并且高亮起来了,这个时候就可以直接批量修改了。

image-20230917154145356

去掉导航栏


去掉导航栏,因为平时用的不多。

image-20230917154152568

可以把红色的导航栏去掉,让IDEA显得更加干净整洁一些。使用alt+v,然后去掉Navigation bar即可。去掉这个导航栏后,如果你偶尔还是要用的,直接用alt+home就可以临时把导航栏显示出来。

image-20230917154159516

如果想让这个临时的导航栏消失的话,直接使用esc快捷键即可。


把鼠标定位到project视图里


当工程里的包和类非常多的时候,有时候我们想知道当前类在project视图里是处在哪个位置。

image-20230917154208158

上面图中的DemoIDEA里,你如何知道它是在spring-cloud-config工程里的哪个位置呢?

可以先使用alt+F1,弹出Select in视图,然后选择Project View中的Project,回车,就可以立刻定位到类的位置了。

image-20230917154214012

那如何从project跳回代码里呢?可以直接使用esc退出project视图,或者直接使用F4,跳到代码里。


强大的symbol


如果你依稀记得某个方法名字几个字母,想在IDEA里面找出来,可以怎么做呢?

直接使用ctrl+shift+alt+n,使用symbol来查找即可。

比如说:

image-20230917154221319

你想找到checkUser方法。直接输入user即可。

image-20230917154227531

如果你记得某个业务类里面有某个方法,那也可以使用首字母找到类,然后加个.,再输入方法名字也是可以的。

image-20230917154232900

如何找目录


使用ctrl+shift+n后,使用/,然后输入目录名字即可.

image-20230917154240040

自动生成not null判断语句


自动生成not null这种if判断,在IDEA里有很多种办法,其中一种办法你可能没想到。

image-20230917154248029

当我们使用rabbitTemplate. 后,直接输入notnull并回车,IDEA就好自动生成if判断了。

image-20230917154254005

按照模板找内容


这个也是我非常喜欢的一个功能,可以根据模板来找到与模板匹配的代码块。比如说:

想在整个工程里面找到所有的try catch语句,但是catch语句里面没有做异常处理的。

catch语句里没有处理异常,是极其危险的。我们可以IDEA里面方便找到所有这样的代码。

image-20230917154304534

首先使用ctrl+shift+A快捷键弹出action框,然后输入Search Struct

image-20230917154312197

选择Search Structurally后,回车,跳转到模板视图。

image-20230917154318362

点击Existing Templates按钮,选择try模板。为了能找出catch里面没有处理异常的代码块,我们需要配置一下CatchStatement的Maximum count的值,将其设置为1。

点击Edit Variables按钮,在界面修改Maximum count的值。

image-20230917154325293

最后点击find按钮,就可以找出catch里面没有处理异常的代码了。

image-20230917154333244

idea 插件

JRebel | IDEA 插件

为什么用JRebel?

我们知道,tomcat部署的时候,可以设置 `Update classes and resources`,达到不用重启的效果。

image-20230917154341233

这个设置可以把修改的class和资源文件一并上传上去,但是这个设置有个限定。就是如果增加了方法,或者修改了参数就必须重启才行。

而JRebel是热部署插件。可以把最新的classse文件load到服务器。(属于一种拦截技术,它帮我们编译,然后传上去)

简单的说。两者的差别就是:当你的 java-web 项目在 tomcat 中 run/debug 的时候 ,修改某一个 java 文件时,tomcat 并不能将此文件的修改 实时编译 并反映到运行的项目中去。JRebel 就可以解决在项目运行状态run/debug 状态下任意修改 java 文件并动态反馈到运行的项目

或者你说,我可以设置tomcat的service.xml配置reloadable=true;那我们就要说一下,这个配置的弊端了。

经过我们分析,原有的tomcat reloadable=”true” 方式,虽可加载变化过或新增的类但存在以下问题

    1、内存清空,整体web app会重新加载,web.xml中配置的监听器会全部再执行。

    2、其他没变的类也会重新加载。

    3、当系统很大时,非常耗时。

JRebel是什么?

JRebel 是一款 Java 虚拟机插件,它使得 Java 程序员能在不进行重部署的情况下,即时看到代码的改变对一个应用程序带来的影响。JRebel 使你能即时分别看到代码、类和资源的变化,你可以一个个地上传而不是一次性全部部署。当程序员在开发环境中对任何一个类或者资源作出修改的时候,这个变化会直接反应在部署好的应用程序上,从而跳过了构建和部署的过程,每年可以省去部署用的时间花费高达 5.25 个星期。

JRebel怎么用?

IDEA安装

IDEA 中依次点击 File --> Settings --> Plugins 搜索 JRebel 安装即可

image-20230917154351703

激活JRebel

安装plugin.

打开jrebel激活面板.选择Connection to online licensing service.

填入URL:  http://139.199.89.239:1008/b8fdf475-b9f7-4146-b426-6e1bb5a17a16

末尾替换为任意UUID==>

在线生成UUID:http://www.uuid.online/

image-20230917154402071

  • 查看当前 JRebel 状态,绿色图标表示激活状态

image-20230917154410401

jrebel激活之后默认是联网使用的 , 在该模式下 , jrebel会一直联网监测激活信息 . 所以要调为离线使用的

image-20230917154415954

上手了兄弟!

点击要热部署的项目。然后tomcat该怎么配置还是怎么配置。启动的时候,启动jrebel的按钮即可。

image-20230917154421837

image-20230917154425750

image-20230917154430307

OK,至于你能享受到的效果,参考第1点,用起来就对了。enjoy yourself~

参考博文

  1. https://www.jianshu.com/p/d177316890e3

  2. https://blog.csdn.net/qq_40110871/article/details/83420125

  3. https://blog.csdn.net/xingbaozhen1210/article/details/81093041

idea 常用10款插件

IntelliJ Idea 常用10款插件(提高开发效率)

插件安装方式:

image-20230917154439971

Background Image Plus

这款插件并不能直接提高你的开发效率,但是可以让你面对的IDE不再单调,当把背景设置成你自己心仪的的图片,是不是会感觉很赏心悦目,编码效率会不会因此间接的提高?!

image-20230917154446324

使用方法:

image-20230917154452941

image-20230917154456008

Mybatis Log Plugin

Mybatis现在是java中操作数据库的首选,在开发的时候,我们都会把Mybatis的脚本直接输出在console中,但是默认的情况下,输出的脚本不是一个可以直接执行的。

image-20230917154504141

如果我们想直接执行,还需要在手动转化一下,比较麻烦。

MyBatis Log Plugin 这款插件是直接将Mybatis执行的sql脚本显示出来,无需处理,可以直接复制出来执行的 。

Tools -- >  Mybatis Log Plugin  打开其日志框,注意其转换的SQL不是输出到IDE的控制台!!!

image-20230917154513121

再执行, 效果是不是很赞

image-20230917154519201

Grep Console

由于Intellij idea不支持显示ascii颜色,grep-console插件能很好的解决这个问题, 可以设置不同级别log的字体颜色和背景色.

image-20230917154533332

image-20230917154538640

自定义设置后,可以运行下项目看下效果

image-20230917154544381

image-20230917154547867

CodeGlance

CodeGlance是一款代码编辑区缩略图插件,可以快速定位代码,使用起来比拖动滚动条方便多了

image-20230917154554620

image-20230917154557854

IDEA Restart

IDEA没有重启的选项,这个工具就是来弥补这个功能,可以在File-->Restart 重启,也可以使用快捷键  CTRL+ALT+R

RestfulToolkit

一套 RESTful 服务开发辅助工具集。

1.根据 URL 直接跳转到对应的方法定义 (or Ctrl Alt N);

2.提供了一个 Services tree 的显示窗口;

3.一个简单的 http 请求工具;

4.在请求方法上添加了有用功能: 复制生成 URL;,复制方法参数…

5.其他功能: java 类上添加 Convert to JSON 功能,格式化 json 数据(Windows: Ctrl+Enter; Mac: Command+Enter)。安装后,右侧会有RestServices侧边栏,点击打开

image-20230917154607590

全局快捷搜索快捷键:Ctrl \

Maven Helper

分析依赖冲突插件,此插件可用来方便显示maven的依赖树,在没有此插件时,如果想看maven的依赖树需要输入命令行: mvn dependency:tree  才可查看依赖。如果想看是否有依赖包冲突的话也需要输入命令行等等的操作。而如果安装Maven Helper插件就可免去命令行困扰。通过界面即可操作完成。

使用方式:打开项目中的pom文件,在底部会显示一个“Dependency Analyzer”,

image-20230917154616242

点击此按钮,切换到此工具栏

image-20230917154623418

可进行相应操作:

Conflicts(查看冲突)

All Dependencies as List(列表形式查看所有依赖)

All Dependencies as Tree(树形式查看所有依赖)

搜索功能

JRebel

热部署插件,让你在修改完代码后,不用再重新启动,很实用!但是,不是免费的,需要大家发挥下聪明才智!

这里简单介绍下使用方式:

image-20230917154632912

image-20230917154636432

第一个文本框填写服务器激活地址,第二个文本框随便填写个邮箱。重点是第一个,服务器激活地址,大家自行百度,附一个参看网址:https://blog.csdn.net/lawsonjin/article/details/76422807

以下是重点:!!!

image-20230917154643399

image-20230917154646627

不然隔断时间就会在线联网检测下,有可能激活造成失效!

SonarLint

SonarLint是一款强大快速的能帮助开发者发现代码里的bug或是代码质量优化点的扩展工具。支持很多主流的语言:JAVA、js、PHP、Python。也支持主流的IDE们,idea、Eclipse、vs等。在idea里更是以插件的形式让人无缝接入

可在线安装,也可离线安装,插件下载地址:https://www.sonarlint.org/

image-20230917154655015

注:安装后,可以将自动分析复选框给去掉,否则可能会造成IDE的卡顿

image-20230917154701298

10、Rainbow Brackets

彩虹颜色的括号  在黑色主题下看的比较清楚舒服,白色主题下看的很不明显,看自己选择了,除了看着舒服,也有助于

帮助区分前后括号对应关系。

image-20230917154710018

其他还有一些插件,根据实际情况选择使用

  • 阿里代码规约检测:Alibaba Java Coding Guidelines

  • 快捷键提示工具:Key promoter X

  • 代码注解插件: Lombok

  • 代码生成工具:CodeMaker

  • 单元测试测试生成工具:JUnitGenerator

  • Mybatis 工具:Free Mybatis plugin

  • JSON转领域对象工具:GsonFormat

  • 字符串工具:String Manipulation

  • 生成对象set方法:GenerateAllSetter

  • Redis可视化:Iedis

  • K8s工具:Kubernetes

  • 中英文翻译工具:Translation

idea 问题

idea SpringBoot启动失败没有报错信息

idea SpringBoot启动失败没有报错信息

image-20230917154724000

加上try catch,这样就有报错信息了

问题一目了然,,,,没有加上mybatis plus 包扫描

image-20230917154730791

IDEA 2020.1 使用问题

Windows Defender报错

Windows Defender might be impacting your build and IDE performance. IntelliJ IDEA checked the following directories:

image-20230917154739183

image-20230917154745210

image-20230917154752534

=> 好像不起作用,,,排除文件夹

image-20230917154801984

==> is work 生效了

没有static web

可以创建Javascript一样的

导入/新建Spring项目提示找不到程序包

Error:(3, 32) java: 程序包org.springframework.boot不存在

image-20230917154813104

估计是破解后的BUG,terminal: mvn idea:idea

image-20230917154819623

下载了一堆maven插件….

image-20230917154826734

mvn -U idea:idea 将继续下载未下载完整的依赖这个命令是更新依赖,但还是不行,我依赖是完整的。

推测: 原来IDEA的Build(编译)操作和Maven的Build是分开的,并不是一回事。在出现这种问题的情况下,我甚至怀疑编辑器中的实时语法编译与Build时的classpath并不一致,否则不会出现这种诡异的情况最后,在maven> 勾选

image-20230917154834262

相当于委托maven build,又经了一手,不是很喜欢,待找到原因,并解决

image-20230917154840863

==> [尝试] 修改maven配置

1
2
3
4
5
6
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>

image-20230917154850541

还是不行…但是这次是包引用爆红,OK>mvn idea:idea,刷新依赖引用

=> 搞定

maven pom.xml不会自动导包,没有设置的地方

新版的IDEA为了防止MAVEN自动导包时卡死的问题,取消了自动导包机制,可以写完依赖统一手动导包。

感觉还行,以前pom.xml改动一点就会导包,导致仓库多了很多无效版本,这样应该也挺好,只要自己不要忘记了就好.

下面这三种方式都可以导包

image-20230917154857971

工具栏设置

image-20230917154905634

源值过期问题

Warning:java: 源值1.5已过时, 将在未来所有发行版中删除

image-20230917154912086

接着可能还会遇到如下错误:

IDEA Error:java: Compilation failed: internal java compiler error

image-20230917154919354

然后,会发现,还是会自动变回1.5编译

解决办法一:pom.xml设置编译版本

1
2
3
4
5
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>

解决方法二: 在maven-conf-settings里配置默认编译版本

这个方法应该是可行的,但是IDEA 2020.1好像还是不生效.原因应该和配置仓库不生效一样吧。还不知道怎么解决.所以暂时用方法一

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<profile>   
<id>jdk1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>

<activeProfiles>
<activeProfile>jdk1.8</activeProfile>
</activeProfiles>

idea插件无法下载 | 流量代理

1
如果idea 插件无法使用 lantern , 查看是否 lantern没有代理全部流量
  • translation: 中文翻译

点击run无响应

  • 设置out编译输出路径

image-20230917154929862

  • 确保每个都选择这个

image-20230917154940388

  • 清除缓存重启

image-20240201132519254