IntelliJ IDEA

平日里大家想看一个jar包里的内容会怎么做呢?直接解压缩到本地?反编译到本地查看?或者下载一些专门查看jar包的工具?是不是觉得稍稍有点麻烦呢? TJ君肯定是想着能让大家在各方面使用更方便,于是今天带来这款插件,可以让大家直接在IDEA查看各种jar包、压缩包,是不是有点好奇呢? 我们来看下具体的效果: 先看看查看jar包的效果: 可以轻松的看到里面每一个文件及对应代码。 再来看看压缩文件的效果: 是不是轻松方便?插件支持各种不同款式的压缩包格式,例如.zip、.gz、.tar、.tgz、.7z、.zip、.jar、.war、.epc等都可以。 插件也不大,一共就105KB,可以说虽然简单小巧,但是实用好用,可以解决不少人的使用难题。 不过TJ君费解的是,今天TJ君怎么都上不了IDEA的插件市场,试了各种方式都不行。所以TJ君将插件包的安装介质给大家准备好了,直接在IDEA里面引...

更新到Intellij IDEA 2021.3之后,Maven出问题了!无法从Maven私有仓库下载依赖了。 提示要从maven-default-http-blocker下载,难道不应该去私仓下载吗? 原因原来IDEA更新到2021.3后内置Maven的版本提升到了3.8.1。 Maven3.8.1发布一个变更(CVE-2021-26291): 由于使用 HTTP 的自定义存储库可能导致中间人攻击。现在越来越多的存储库使用 HTTPS,但情况并非总是如此。这意味着 Maven Central 包含带有自定义存储库的 POM,这些存储库通过 HTTP 引用 URL。这使得通过此类存储库下载的内容成为攻击目标。开发人员可能没有意识到某些下载使用了不安全的 URL。由于上传到 Maven Central 的 POM 是不可变的,因此需要对 Maven 进行更改。 为了解决这个问题,从3...

昨天刚刚跟大家聊了Jetbrains即将推出轻量级编辑器Fleet,以挑战 VS Code的消息,今天又收到了IntelliJ IDEA 2021.3正式发布的推送。 不说废话,下面就跟我们一起来看看这个版本带来了哪些惊艳的功能! 远程开发 在这个版本中的远程开发还不是一个正式版本,而是BETA版,但通过这个BETA版本,也可以体验IDEA“远程开发”给我们带来的全新体验。 通过该功能的支持,我们可以从世界任何地方轻松连接到运行 IntelliJ IDEA 后端的远程计算机。所有处理都将在这台强大的远程计算机上进行,您将能够像在本地计算机上一样无缝地处理项目。 如何使用呢?如下图,我们只需要在 IntelliJ IDEA 的欢迎屏幕或通过 Toolbox App 中新增的 JetBrains Gateway 应用程序启动此功能。 该远程开发功能除了完成我们日常的编码之外,还能与...

前几天给大家介绍过一款IDEA编码自动注释工具,可以帮助小伙伴们的编程效率,想必很多人已经下载使用了,还没看过想了解下的小伙伴点这里:IDEA编码自动注释工具,让你的开发更有效率 然而此时此刻TJ君脑海中有一个大胆的想法,如果有一款工具,能反过来根据注释自动给出编程代码,是不是程序猿们都会笑的合不拢嘴,爽歪歪? 别以为TJ君说的是天方夜谭,就在前不久的 GitHub Universe 2021开发者大会上,GitHub官方正式宣布了一款名为 Copilot工具的更新。 说起Copilot这个名字,相信一直关注GitHub的小伙伴马上脑海中会浮现出今年早些时候看到的新闻。 就在今年夏天,GitHub 官方和OpenAI联合发布了一款AI自动编程工具,其名字正是 GitHub Copilot 。就像前文TJ君想的那样,通过Copilot,程序员只需输入注释,即可自动生成代码! 当时一时间...

IntelliJ IDEA 2021.2.3 现已发布,用户可以从 IDE 内部、通过 Toolbox 应用程序或使用 Ubuntu 的 snaps 进行升级,也可以从官方网站下载。 主要更新内容 修复了接口方法上的调用层次结构以正确返回结果 如果 IDE 由于操作系统关闭而关闭,则修复了每次启动时重复索引的问题 修复了在 WSL 2 中重新打开项目时导致 IDE 冻结的问题 修复了停止按钮的行为。当您停止 WildFly 运行配置时,不再出现终止批处理作业提示 修复了添加新 Arquillian 容器的对话框 修复了导致 IDE 冻结的问题 修复了 xslt 文件关联 修复了 jsp 文件中未使用导入的优化导入操作 修复了有关配置 Spring Boot 注释处理器的文档的链接 修复了 Maven 项目重新导入时,依赖项视图没有更新的问题 在依赖项工具窗口中输入时出现超级延迟 在 ...

接上一篇IDEA调试技巧远程调试 5. 临时执行表达式/修改变量的运行值调试时,可以临时执行一些表达式,参考下图:点击这二个图标中的任何1个都可以 点击+号后,就可以在新出现的输入框里输入表达式,比如:i+5 然后回车,马上就能看到结果 当然,如果调试时,想动态修改变量的值,也很容易,在变量上右击,然后选择Set Value,剩下的事,地球人都知道。 好了,今天的文章就到这里了,牢记这5大调试技巧可以让你快速定位问题,迅速解决bug,最后祝大家debug愉快!

接上一篇IDEA调试技巧多线程调试 4.远程调试这也是一个装B的利器,本机不用启动项目,只要有源代码,可以在本机直接远程调试服务器上的代码,打开姿势如下: 4.1 项目启动时,先允许远程调试java -server -Xms512m -Xmx512m -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9081 -Djava.ext.dirs=. ${main_class} 起作用的就是: -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9081 注意:远程调试从技术上讲,就是在本机与...

接上一篇IDEA调试技巧回到’上一步’ 3.多线程调试多线程同时运行时,谁先执行,谁后执行,完全是看CPU心情的,无法控制先后,运行时可能没什么问题,但是调试时就比较麻烦了,最明显的就是断点乱跳,一会儿停这个线程,一会儿停在另一个线程,比如下图: 如果想希望下一个断点位置是第2句诗句,可能要失望了: 如果想让线程在调试时,想按自己的愿意来,让它停在哪个线程就停在哪个线程,可以在图中3个断点的小红点上右击, 即:Suspend挂起的条件是按每个线程来,而非All。把这3个断点都这么设置后,再来一发试试 注意上图中的红框位置,断点停下来时,这个下拉框可以看到各个线程(注:给线程起个容易识别的名字是个好习惯!),我们可以选择线程“天空中的飞鸟”。 断点如愿停在了第2句诗。 点击查看下一个IDEA调试技巧远程调试

接上一篇IDEA调试技巧回到’上一步’ 回到”上一步”该技巧最适合特别复杂的方法套方法的场景,好不容易跑起来,一不小心手一抖,断点过去了,想回过头看看刚才的变量值,如果不知道该技巧,只能再跑一遍。 参考上图,method1方法调用method2,当前断点的位置j=100,点击上图红色箭头位置的Drop Frame图标后,时间穿越了 回到了method1刚开始调用的时候,变量i变成了99。 注:好奇心是人类进步的阶梯,如果想知道为啥这个功能叫Drop Frame,而不是类似Back To Previous之类的,可以去翻翻JVM的书,JVM内部以栈帧为单位保存线程的运行状态,drop frame即扔掉当前运行的栈帧,这样当前“指针”的位置,就自然到了上一帧的位置。 点击查看下一个IDEA调试技巧多线程调试

在项目开发的时候我发现很多小伙伴能非常熟练的使用 IDEA 编写代码,但是对于IDEA调试的技巧掌握的不是很好,只会F7、F8、F9等这些基本调试功能。 而像一些复杂的调试场景就无从下手,如:在for循环中调试某个特定值;多线程、Reactor调试;修改变量的运行值等。 下面我们就来分场景介绍一下IDEA的调试技巧,看完掌握后调试bug的效率一定大大提升 条件断点循环中经常用到这个技巧,比如:遍历1个大List的过程中,想让断点停在某个特定值。 参考上图,在断点的位置,右击断点旁边的小红点,会出来一个界面,在Condition这里填入断点条件即可,这样调试时,就会自动停在i=10的位置。 点击查看下一个IDEA调试技巧回到’上一步’

平时你画UML图都用什么?Processon、Visio这些相信大家已经都很熟悉了。今天TJ要给大家介绍的是一个特别的画图工具,它是IDEA中的一个插件,有了它你可以把画图与编码都集成到IDEA中一起完成,是不是感觉很棒呢?下面就来一起认识下今天要介绍的IDEA插件:PlantUML! PlantUML,是一款开源的图绘制项目,支持通过编写文本来快速生成各种UML图形,目前支持时序图、用例图、类图、对象图、组件图、部署图、状态图、定时图;同时也支持用来生成非UML图,像JSON数据、YAML数据、架构图、思维导图等等,都可以用它来完成。 简单的说,就是你直接通过编程来画出你要的各种图,是不是特别适合我们程序猿呢? 光说可能不够形象,直接上例子,例如像一些时序图,你就可以这样实现: 图案左半边,就是你输入的文本,右半边就是根据文本生成的效果,像这种时序图,语法规则其实很简单,可以简单...

你身边有没有这种顽固的Eclipse忠实用户:IDEA不能一个窗口管理多个项目!太不方便了! 对于一个窗口同时管理多个项目的需求,在我们日常开发时候是经常需要的。尤其当我们在分布式环境下,在一个窗口中调试起来就能方便很多。 如此强大的IDEA真的不支持吗?!当然不是!是你不会用! 下面我们就来说说如何在一个工作空间中管理多个项目的配置方式: 第一步:先创建一个新的空白工程 在弹出的项目名称和路径输入框中根据你的喜好输入即可。 第二步:添加模块 添加模块的方式有两种: New Module:如果你要管理的是一个新项目,那么可以通过这个选项创建一个新项目,并纳入当前的项目管理界面中。 对于我们这些Spring开发者来说,可以继续用Spring Initializr来初始化你的项目,这样创建出来的项目会成为当前这个项目的模块来管理。 Import Module:如果你要管理的项目已经...

今天开个很久没搞的工程,刚开的时候一片红,很自然的想到,要去配置一下项目的JDK,但是配置好之后,又出了个诡异问题:项目可以运行,但是import项目内部自己写的类的时候,都出现了红色错误。虽然import显示错误,但是实际类是存在的!! 就像下面这样: 那么碰到这类问题之后要如何解决呢?下面说说解决步骤: 第一步:菜单中选择File - Invalidate Caches/Restart... 第二步:在弹出框中,选择Invalidate and Restart 静静等待IDEA重启,此时就可以看到红色import错误没有啦!

JetBrains旗下有多款编译器工具(如:IntelliJ、WebStorm、PyCharm等)在各编程领域几乎都占据了垄断地位。今日,疑似JetBrains严查盗版破解用户,导致大量以破解方式获取使用权限的用户,无法继续使用。 各技术社区、论坛、社群等媒介都出现大量求破解码或破解方式的相关内容出现。 与此同时,围绕这些编辑器破解码与破解方式的利用就展开了。 借机引流借着这次大规模破解版实现的问题,大量对应的垂直类媒体渠道也开始借助给予最新破解码的方式来吸引关注。 灰产受挫还有一类用户,通常因为破解麻烦而去某宝或某鱼直接购买注册码的方式来使用,而通常这些方式给予的注册码也非正版渠道。因此在这一波打击中,也都全部被击毙。 虽然他们使用也是盗版,但是也算是一类付费用户,因此也就有了如下图的维权: 至于店主是否真的在服刑中,我们不得而知,也可能只是因为这次杀伤力太猛,回头维权的用...

记录一个昨天碰到的问题以及解决方法,希望对碰到一样问题的你有用! 昨天升级了一下Mac OS,重启后再打开IntelliJ,突然Git就不能用了,报了下面这样的错: 开始以为是不是Git出了问题,打开终端试了一下git命令,是一切正常的,排除git客户端的损坏。 再仔细看错误原因,推测可能是路径配置问题,打开IntelliJ的菜单:Preferences...。 在左侧搜索框中直接搜索git或者直接找到Version Control菜单项,点击下属的Git功能项,此时可以看到当前的Git命令路径配置如下图: 问题就出在这里,将该路径修改为: /usr/local/bin/git 点击右侧的Test按钮,测试一下,可以看到如下图所示的结果: 完成之后,记得点击Apply和Ok按钮,然后关闭设置窗口之后,Git就可以正常使用了!