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),附我想专注的语言
受苏格拉底大神的启迪,我也来谈谈全栈.禅师:成为全栈工程师,这个问题等于如何成为全才,有可能吗码农:有可能,不过可能性比较低,因为达芬奇这类人毕竟是百年一遇的奇才.不过,因为我热爱这个行业,也有一定天 ...
随机推荐
- 一次TIME_WAIT和CLOSE_WAIT故障和解决办法
昨天解决了一个curl调用错误导致的服务器异常,具体过程如下: 里头的分析过程有提到,通过查看服务器网络状态检测到服务器有大量的CLOSE_WAIT的状态. 在服务器的日常维护过程中,会经常用到下面的 ...
- hdu3015树状数组 poj1990的离散化版本
都是一类题目,推导调试比较烦,想出来还是不难的 /* 给定n个点对,按一维升序排序一次,每个点的序号为Di,按二维升序排序一次,每个点的序号为Hi 求sum{w(i,j)} w(i,j)=abs(Di ...
- 步步为营-64-进程&线程
1 进程 using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; us ...
- docker安装sonarqube及实际应用
由于平台的多样化,在不同环境的安装方式可能也不一样,为了避免环境不一致带来的差异,特记一笔容器安装: 一.Sonar可以从以下七个维度检测代码质量,而作为开发人员至少需要处理前5种代码质量问题. 1. ...
- spring + quartz定时任务,以及修改定时任务
spring4+quartz2.2.3,定时任务弄好了,修改定时任务没折腾起,没找到合适的解决方案. 最终使用库spring-context-support 3.2.17.RELEASE + qua ...
- C#中IEnumerable、ICollection、IList、IQueryable 、IQueryable 、List之间的区别
一:一个简单的例子 int[] myArray = { 1, 32, 43, 343 }; IEnumerator myie = myArray.GetEnumerator(); myie.Reset ...
- python全栈开发day20-类的三大特性继承、多态、封装
1 继承 1.怎么继承,父类和子类 class 类名(父类):pass 除了__init__下对象属性不能自动继承外,其他的类属性和动态方法,子类对象都可以访问到. 2.子类对象查找属性的顺序,对象现 ...
- jQuery动态设置样式(style、css)
一.jQuery设置css样式 <div style="background-color:#ffffff;padding-left:10px;">测试jQuery动态获 ...
- Burp Suite之Scaner模块(三)
Burp Suite之Scaner模块(三) Scaner模块配置详解 Scan Queue Active Scanning(主动扫描)过程通常包括发送大量请求到服务器为所扫描的每个基本的请求,这可能 ...
- go语言学习-安装和配置
go的安装方式主要有两种,一种直接使用系统自带的软件源来安装,比如 ubuntu 可以直接使用 apt 安装,但通常这种方式安装的都不会是最新的.所以通常直接下载最新的安装包,可以到GoCN下载.下面 ...