无需付费,教你IDEA社区版中开发Web项目(SpringBoot\Tomcat)
1、IDEA 版本介绍
最近有小伙伴私信我说 IDEA 破解怎么总是失效?难道就没有使用长一点的吗...
咳咳,除了给我留言「激活码」外,或许社区版可能完全满足你的需求。
相信有挺多小伙伴可能不清楚或者没听过社区版,其实 IDEA 有三个版本:
Community:社区版,相当于 OpenJDK 的存在,完全免费,但功能有限制,且功能相对于终极版少的不是一点半点,甚至默认都不支持 Web 开发... 关于跟终极版的区别可以参考我的这篇文章:社区版和付费版的区别,好处就是免费,且可以用于商业开发,Google 的 Android Studio 就是基于社区版开发的。
EAP:终极版的开发版,或者说终极版的免费版,免费,功能无限制,更新频率比较高,相当于王者荣耀体验服,但只能试用30天,想要长时间使用就必须每隔 30 天重装一次...
Ultimate:终极版,收费,价格不菲,首年3000元左右,功能无限制,也有30天的试用期,目前大家用的比较多的版本。
如果大家对 EAP 版本感兴趣的话可以访问该链接:EAP下载链接请点击此处文字

2、正文部分
大家使用 IntelliJ IDEA 基本上是做 Web 开发,但社区版默认对 Web 开发的支持真的是一言难尽...
比如不支持 Spring、SpringMVC 等框架呀、不支持 Tomcat 项目部署呀之类的。
但是,不支持但不代表不能做 Web 开发,接下来带大家走一遍如何通过社区版创建一个 Spring Boot 项目。
社区版下载链接:社区版下载链接请点击此处文字
安装过程就不赘述了,一路默认即可。
2.1、安装 Spring Assistant 插件
我们都知道在终极版中有个 Spring Initializr 的脚手架,可以方便快速的帮助我们创建一个 Spring Boot 应用,那么社区版能用吗?
能用,但是需要先装插件。
进入 Settings/Preferences -> Plugins 插件目录,搜索关键字「Spring Assistant」,找到对应的插件后进行安装、重启。

安装重启IDEA之后,我们再 new project(新建项目) 时,切换到 Spring Assistant 标签:

你会发现这不就是 Spring Initializr 嘛~
Next 之后,就是填写项目信息、勾选项目依赖之类的,在这就不赘述了,跟使用 Spring Initializr 一样。
如下是创建后的 Spring Boot 项目接口:

你会发现,创建后的项目还是那么熟悉,还是那个结构,一点变化都没有,甚至直接运行这个 Spring Boot 项目都没什么问题。
那么如果项目开发依赖的架构仅仅是 Spirng Boot 的话,感觉社区版也很香啊,没啥问题~
2.2、安装 Tomcat 插件
有的小伙伴的项目可能是传统的 Web 框架,还是需要 Tomcat 容器(或者 Jetty)才能启动。
没关系,社区版默认不支持 Tomcat 项目部署,但是不代表不能使用,安装插件走起~
进入 Settings/Preferences -> Plugins 插件目录,搜索关键字「Tomcat」,找到对应的插件后进行安装、重启。

安装重启之后,点击顶部 Run > Edit Configurations...

然后添加一个启动容器 Smart Tomcat,操作步骤其实跟 Tomcat 一样~

如下是我本地一个传统 Web 项目的启动截图:

3、社区版开发总结
其实社区版使用下来,柑橘基本能满足我的开发需求,特别是前后端分离之后。
但是为什么大家还是去使用终极版呢?
在使用了几天的社区版后我觉得能吐槽的也就是框架支持方面了...
终极版对 Spring 相关的框架做了大量的支持,突然转换到社区版后偶尔会觉得别扭(其实还好),比如社区版不支持 Spring Boot、Spring Cloud 等配置文件的自动补全,或者是框架的一些图形化类图的展示。
不支持 Detecting Duplicates(Detecting Code):代码查重,提示代码重构等。
前端开发不支持语法高亮(仅针对 freemarker 语法做了测试),不过前后端分离后,这个就不算啥。
其他的你要说不支持吧,但是大部分又可以通过插件形式进行整合,比如 Tomcat 、Spring Assistant 、Database 等。
总之,一切皆插件,不支持的可以自己安装插件,如果插件不支持的话,就当我没说这句话...
其实,社区版也有好处,尤其是内存方面,因为没有了一堆默认插件,反而社区版显的非常轻量级,简直就是内存的福音。。。
至此,如果大家被终极版的激活方式搞得一度崩溃的话,不妨试一下社区版。
大家有在使用社区版的吗?欢迎评论区留言讨论~
无需付费,教你IDEA社区版中开发Web项目(SpringBoot\Tomcat)的更多相关文章
- 【Maven】【IDEA】在idea中开发web项目,解决maven的jar包冲突的方法
在idea中开发web项目,解决maven的jar包冲突的方法 第一步: 先对项目进行 clean ,再进行install 第二步: 出现NoSuchMethodException,ClassNotF ...
- 部署Eclipse中的Web项目到Tomcat服务器运行
用Eclipse开发Web项目时,可以通过Tomcat服务器运行Web项目,此时Web项目被部署在[WorkSpace]\.metadata\.plugins\org.eclipse.wst.serv ...
- 在Eclipse中开发WEB项目
本文的演示是从本地文件创建dynamic web project,从svn检出的同时创建dynamic web project于此类似.我们推荐使用解压版的tomcat6.x版本,来作为服务器.可以到 ...
- MyEclipse中加入web项目到tomcat
假设导入不是在MyEclipse下建立的web项目,想加入到tomcat中时,会显示"No projects are available for deployment to this ser ...
- Eclipse 中,web项目在Tomcat运行时填写不了Server name
最近开发项目,从MyEclipse中导入项目到Eclipse中,那些WEB属性都在,可就是不能在Tomcat上运行.纠结一番,最后发现是这个问题: WEB的版本问题. 具体问题看下图: 解决方案: W ...
- ubuntu16中部署web项目到tomcat,xft和securecrt连接到ubuntu16(待续。。。)
xftp xftp中新建连接 ubuntu中安装和启动ssh服务 xftp连接到ubuntu 安装JDK,Tomcat sudo tar -zvxf jdk.tar.gz ...
- myeclipse中更改web项目在tomcat中部署的路径
右键点击项目名称,选择属性properties,选择myeclipse->web.更改web context-root就可以.
- 关于idea中,web项目启动tomcat,访问资源报错404
背景: web项目启动tomcat,访问相应的资源,报错404,前提资源路径是没错的. 原因: 1.确定是不是web项目 不是的话: 配置web-inf的路径和webroot(web根目录)的路径 2 ...
- PyCharm社区版+Django搭建web开发环境-2
接上一篇:PyCharm社区版+Django搭建web开发环境-1 1. 创建好django项目并建立app应用:web 2. setting.py:配置app应用 INSTALLED_APPS = ...
随机推荐
- 交换机基于接口划分VLAN(汇聚层设备作为网关)
组网图形 简介 划分VLAN的方式有:基于接口.基于MAC地址.基于IP子网.基于协议.基于策略(MAC地址.IP地址.接口).其中基于接口划分VLAN,是最简单,最常见的划分方式,如接入层设备作为网 ...
- 转 Cache一致性和内存模型
卢本伟牛逼,写得很好 https://wudaijun.com/2019/04/cpu-cache-and-memory-model/ 本文主要谈谈CPU Cache的设计,内存屏障的原理和用法,最后 ...
- 解决SSH显示中文乱码的问题(cent os7)
用SSH连接服务器显示中文乱码,试过修改SSH端,不成功.这次从服务器端下手 1.先查看服务器现有的字符集 [root@dm01 ~]# locale -a 在结果中找到 如果没有支持的字符集就需要安 ...
- SpringBoot第十一集:整合Swagger3.0与RESTful接口整合返回值(2020最新最易懂)
SpringBoot第十一集:整合Swagger3.0与RESTful接口整合返回值(2020最新最易懂) 一,整合Swagger3.0 随着Spring Boot.Spring Cloud等微服务的 ...
- 01Java环境安装监测
下载安装JDK JDK:Java开发套件 JDK下载 监测JDK安装是否成功 运行Java命令 运行Javac命令
- 【干货!!】十分钟带你搞懂 Java AQS 核心设计与实现!!!
前言 这篇文章写完放着也蛮久的了,今天终于发布了,对于拖延症患者来说也真是不容易-哈哈哈. 言归正传,其实吧..我觉得对于大部分想了解 AQS 的朋友来说,明白 AQS 是个啥玩意儿以及为啥需要 AQ ...
- SMB远程代码执行漏洞(CVE-2020-0796)分析、验证及加固
这几天有点忙,CVE-2020-0796出来了,没静下心来关注一下,显得太不尊重这个漏洞了,今天周末,关注一下,水一篇. 一.漏洞描述 漏洞公告显示,SMB 3.1.1协议 ...
- 关于Redis的一些思考
1.从Java语言考虑,已经有ConcurrentHashMap等并发集合类了,与Redis相比,区别于差异在哪? 一直有这么个疑问,今天有搜了很久,很巧,搜到个有同样想法的问答,如下: When p ...
- C++中内存布局 以及自由存储区和堆的理解
文章搬运自https://www.cnblogs.com/QG-whz/p/5060894.html,如有侵权请告知删除 当我问你C++的内存布局时,你大概会回答: "在C++中,内存区分为 ...
- ABBYY FineReader 14如何查看PDF文档
使用 ABBYY FineReader,您可以轻松查看和编辑任何类型的 PDF文档,就像是一款功能强大的PDF编辑转换器,不仅如此,它还能够允许您复制其中的文本.图片和表格.本文我们来看看如何从&qu ...