Java全栈程序员之03:Ubuntu下安装idea
JetBrains的产品我曾经用过很长一段时间,它们是resharper和dotcover。VS号称宇宙最强IDE,直到它遇到了resharper,我们才知道,原来vs可以更好。DotCover是一个计算代码覆盖率的工具,过去,我们为了应付QA的检查,与DotCover成了最好的朋友。
我有一段时间(其实也包括现在),特别的精分,白天Java,晚上C#,隔几天可能还要弄一下PHP,其中最痛苦的莫过于就是IDE的切换,常常对着VS敲着Eclipse的快捷键,心里骂着怎么智能感知还没出现。后来IntelliJ IDEA渐成主流,我发现很多快捷键在reshaper中和idea中是一致的,毕竟是一个爹嘛,心中对于idea的喜欢与日俱增。Idea就像梦中情人的形象,突然出现在你面前,虽然它其实是jetbrains的第一个产品。
用了IntelliJ IDEA的人,基本不想回到eclipse;
用了resharper的人,没人想要卸载这个插件,为了它宁可去多加一块内存;
作为Java的全栈程序员,不好意思不自称在linux下编码。作为全栈程序员,也不好意思只会用Eclipse,今天我们就开始迈出使用IntelliJ IDEA的第一步。
1.安装
来到官网,进入IntelliJ IDEA二级页面,选择linux下的ultimate下载。


下载完毕,如下


在上一篇中,我们安装JDK几乎全程用图形化界面,这很不linux,这次我们命令行操作。
切换到下载目录


解压到opt目录
关于opt目录约定俗成是做什么用的,我们在上一篇中已经说明过了):
sudo tar -zxvf ideaIU-2018.2.2cd.tar.gz -C /opt
切换到idea的bin目录
cd /opt /idea-IU-182.4129.33/bin
运行idea.sh
./idea.sh
./表示当前目录。 linux默认搜索目录中没有包含当前目录,所以我们要执行当前目录的命令,就要加上前缀./,当然用全路径代替也是可以的。Windows就没有这个毛病,但是Windows下有个工具叫做powershell,沿袭了这个毛病(传统)。
2.测试
运行完毕idea.sh,就会发现在左边的工具栏中增加了一个IntelliJ IDEA,这代表当前idea正在运行中


让我们create new project。这个时候出现的第二个界面,就会让我们选择jdk


我们去选择上一篇已经配置好的jdk的路径


下一步


可以选择默认创建HelloWorld,如下


也可以不选择,这里其实我们没有选择。如果不选择,那么进入到的界面,如下。这个界面大家很熟悉了,跟Eclipse也差不了多少。左边是project的结构,右边是主工作区间


接着,手动创建HelloWorld类,如下


敲入代码,右键run,底部就会出现console信息


一个简单的测试完成了:)。
3.BUT
但是,初恋情人般的存在虽然好,不给钱没人跟你谈恋爱。


被你嫌弃的Eclipse,你用了它十来年。现在的你不喜欢了,当年的你,第一次见到它的时候,还不是照样心动,还不是照样觉得它才是你这辈子的真爱。最主要的,它还不花你一分钱。这么多年来,它陪你娶妻生子,让你撸码买房买车,你就这么说抛弃就抛弃了?
没错~~
回到idea,它要你的钱,要的还很不便宜。但是它爱你的钱的同时,它也爱你的年轻。如果你是一个学生,你可以凭借学生证明免费使用ultimate版本。如果你既不年轻,也没钱,那就只有crack一条路了。
http://idea.lanyus.com/,就是这么一个供你crack的站点。以下我只是听说,从来没有试过。
首先,下载JetbrainsCrack-3.1-release-enc.jar,
其次,编辑bin目录下的idea64.vmoptions和idea.vmoptions文件。在最后一行插入:
-javaagent:/opt/idea-IU-182.4129./bin/JetbrainsCrack-3.1-release-enc.jar
然后,重启idea。进入help的reigster,在下面的窗口


输入:
ThisCrackLicenseId-{
"licenseId":"ThisCrackLicenseId",
"licenseeName":"idea",
"assigneeName":"",
"assigneeEmail":"idea@163.com",
"licenseRestriction":"For This Crack, Only Test! Please support genuine!!!",
"checkConcurrentUse":false,
"products":[
{"code":"II","paidUpTo":"2099-12-31"},
{"code":"DM","paidUpTo":"2099-12-31"},
{"code":"AC","paidUpTo":"2099-12-31"},
{"code":"RS0","paidUpTo":"2099-12-31"},
{"code":"WS","paidUpTo":"2099-12-31"},
{"code":"DPN","paidUpTo":"2099-12-31"},
{"code":"RC","paidUpTo":"2099-12-31"},
{"code":"PS","paidUpTo":"2099-12-31"},
{"code":"DC","paidUpTo":"2099-12-31"},
{"code":"RM","paidUpTo":"2099-12-31"},
{"code":"CL","paidUpTo":"2099-12-31"},
{"code":"PC","paidUpTo":"2099-12-31"}
],
"hash":"2911276/0",
"gracePeriodDays":,
"autoProlongated":false}
确定后发现,今后90年,idea都是你的了。


大家愉快撸码吧。
Java全栈程序员之03:Ubuntu下安装idea的更多相关文章
- Java全栈程序员之04:Ubuntu下安装MySQL、注册服务及Navcat
在安装MySQL之前,我们先来介绍一下Ubuntu下软件的安装方式.首先回顾下,我们安装JDK,使用的是后缀名为tar.gz的安装包.安装idea,使用的是tar.gz:那有没有别的安装方式呢? 1. ...
- Java全栈程序员之02:Ubuntu下Java环境安装、配置、测试
在上文讲完之后,我们手里的ubuntu只能算是一个上网机,什么也干不了,本篇我们将折腾它为开发机. 这里,我们这里假定你对linux体系是初级选手,所以本篇会讲的啰嗦一点,高手就出门左转吧. 1.安装 ...
- Java全栈程序员之01:做个Linux下的程序猿
Windows10正在成为史上口碑最差的Windows系统 (图侵删) 我曾经花了数次1小时去寻找解决方案去关闭自动更新,包括停掉服务.修改注册表等等.但是都没有成功. 微软自身是知道这个问题的,但就 ...
- Java全栈程序员之08:MAVEN+JAVA配置
从Spring3.0开始,Spring支持以Java配置的方式来代替XML配置.这一点说起来其实有点可笑,XML配置的方式最初被创建出来就是为了让配置与程序员无关.可是最终我们发现,绝大多数的那些配置 ...
- Java全栈程序员之05:Ubuntu下安装TOMCAT、集成到IDEA
使用idea绝不是开发一个Hello World这么简单,现在我们要使用idea进行企业级开发(也就是JavaEE)的准备了,那么首先,我们就得有一个web应用服务器.选什么呢?当然首选是大名鼎鼎的T ...
- Java全栈程序员之09:IDEA+GitHub
GitHub是源码托管站点,其依赖于Git这个源码管理工具来进行代码的托管.所以将我们的代码托管到GitHub之前,我们需要安装Git. 1.Git安装 可以通过输入git命令来确定是否在本机已经安装 ...
- Java全栈程序员之07:IDEA中使用MAVEN构架生产级的Web项目
在上一篇我们介绍了如何在IDEA中使用MAVEN,以及如何创建依赖等.那么在这一篇中,我们就试图搭建一个生产级的解决方案,大家可以使用这个解决方案作为骨架代码来搭建自己的开发环境. 在这里,我们要完成 ...
- Java全栈程序员之06:IDEA中MAVEN项目依赖及运行
MAVEN已经成为事实上的企业项目开发中的项目类型.无论是IDEA还是Eclipse,都已经默认支持创建MAVEN项目.严格意义上来说,MAVEN不是一种新的JavaEE项目类型.它凌驾于所以的项目类 ...
- [转]乐死我了,怎么样成为一个全栈程序员(Full Stack Developer),附我想专注的语言
受苏格拉底大神的启迪,我也来谈谈全栈.禅师:成为全栈工程师,这个问题等于如何成为全才,有可能吗码农:有可能,不过可能性比较低,因为达芬奇这类人毕竟是百年一遇的奇才.不过,因为我热爱这个行业,也有一定天 ...
随机推荐
- Tomcat启动startup.bat闪退和JRE_HOME错误
转载:http://blog.csdn.net/xushikuan/article/details/8132317 昨天学习Struts2,下载Tomcat7,太恶心了. 先是报个错,无法启动,基本意 ...
- 求阶乘的和(for循环)
第二种方法:
- OneNET麒麟座应用开发之九:与SD卡通讯并保存数据
由于需要记录的数据量比较大,而且有些时候,有的用户不方便实时上传数据,所以要求使用SD卡存储数据然后人工收取上传.为此我们选择了一种通用的SD卡读写器. 1.读卡器简介 该读卡器整合 SD 卡规范和 ...
- 使用css3美化复选框
声明:文章为转载(略改动),点击查看原文.如有侵权24小时内删除,联系QQ:1522025433. 我们知道HTML默认的复选框样式十分简陋,而以图片代替复选框的美化方式会给页面表单的处理带来麻烦,那 ...
- 在django中,redirect如何传递message。
众所周知,在django中,默认的message,只能在同一个request中传递. 但如果在请求过程中,使用了redirect跳转,那么,这个一次性的message就会失败, 无法在前端给用户提示. ...
- BZOJ 3771 Triple FFT+容斥原理
解析: 这东西其实就是指数型母函数? 所以刚开始读入的值我们都把它前面的系数置为1. 然后其实就是个多项式乘法了. 最大范围显然是读入的值中的最大值乘三,对于本题的话是12W? 用FFT优化的话,达到 ...
- Java各种对象(PO,BO,VO,DTO,POJO,DAO,Entity,JavaBean,JavaBeans)的区分
PO:持久对象 (persistent object),po(persistent object)就是在Object/Relation Mapping框架中的Entity,po的每个属性基本上都对应数 ...
- CentOS root用户修改密码
1.root用户修改密码: #passwd -------------------------------- 参考资料: 1.Centos修改root密码:http://blog.163.com/wz ...
- vue中svg图标使用
在前端开发中,经常会用到svg图标,在vue开发的中,经常会借助一些第三方插件,经常用的有vue-svg-icon,基本使用步骤为: 1.安装插件(会提示没有安装xml-loader,只需要安装下xm ...
- Python开发之序列化与反序列化:pickle、json模块使用详解
1 引言 在日常开发中,所有的对象都是存储在内存当中,尤其是像python这样的坚持一切接对象的高级程序设计语言,一旦关机,在写在内存中的数据都将不复存在.另一方面,存储在内存够中的对象由于编程语言. ...