1

clipboard.png

是不是看到这张图,觉得我这人真是苦逼啊?如果你有这方面的需要,可以参考本文。

在 U 盘上搭建相对完整的 Java 开发环境,主要分为 Java 本身、数据库、远程终端和版本控制等等几个部分,下面分别介绍。

首先需要说明的是,因为一些相关的配置是预先设置好的,所以 U 盘插进电脑之后,需要改成固定的盘符。我选“U”这个盘符,因为绝大多数电脑不会用它。

clipboard.png
用磁盘管理修改 U 盘的盘符

为什么要用 U 盘(或移动存储)

随时随地进行开发这样的需求,其实不一定非得要有 U 盘,但有时候你可能会遇到这样的情况:

  • 有电脑可以用,但无法联网。有些项目现场开发的情况是这样。这意味着不能用网上的虚拟机。
  • 临时借别人的电脑来用(对方可能也是开发者),临时装开发环境,或者把人家的环境变量改得一团糟,这都是不受欢迎的。
  • 网吧不允许你用 U 盘上的操作系统来启动电脑,因为这等于是不付费上网了。就算你肯另外付钱,网吧出于安全考虑也不会允许。

综合起来考虑的话,将开发环境以文件的方式放在 U 盘上,拿电脑的系统去运行,这是符合大多数情况的。

Java

想要进行 Java 开发,至少要有两个东西:JDK 和 IDE。

JDK 很简单,拷贝一个过来就可以了。比如我的 JDK 放在 U:\JDK\jdk1.8.0_131 目录下。没错,不需要设置什么环境变量。

IDE 我用的是 IntelliJ,它本身也是不需要安装的,但是它有一个工作目录需要配置。首先将 IntelliJ 程序拷贝到 U:\IntelliJ\IDEA 目录下,然后编辑 U:\IntelliJ\IDEA\bin\idea.properties ,加上下面两行:

idea.config.path=U:/IntelliJ/.IntelliJIdea/config
idea.system.path=U:/IntelliJ/.IntelliJIdea/system

这样 IntelliJ 的所有配置都会保留在 U 盘上。不过还要注意一点的是如果电脑上是第一次运行 IntelliJ,会弹出注册对话框。如果你是正版用户,输入你的 JetBrains 账号密码即可。

至于其他的 IDE,我还没尝试过。

为了以后创建项目方便,可以在 IntelliJ 中设置项目缺省设置,比如将 JDK 指向之前拷贝的路径。

clipboard.png

数据库

MySQL 是可以带在 U 盘上的。具体设置可以看我之前的解压即用 MySQL 使用指南(Windows)

至于数据库工具,我个人推荐一款叫做 Database.NET 的免费工具,它最大的好处就是只有一个可执行文件,双击就能打开并连接数据库。

clipboard.png

远程终端

其实很多终端工具都是可以放在 U 盘上用的,比如 PuTTY、MobaXterm 等等,不过我这里介绍一个国人开发(而且也是用 java 开发)的免费终端运维工具 FinalShell

clipboard.png

它的方便之处一眼就能看出来:标签页管理、随时可查看系统状态、方便的文件管理、并支持通过代理访问内网服务器。跟 PuTTY 这样的老牌终端相比,兼容的系统多样性方面可能还有点欠缺,但对比较新的操作系统支持是没问题的。

版本控制

IntelliJ 集成了对 Git 和 Subversion 的操作,所以只需要将 Git 拷贝到 U 盘上,然后在 IntelliJ 设置中指定 Git 和 Subversion 的位置就可以了。版本控制的操作都在 IntelliJ 中完成。

当然你也可以用命令行,但因为没有设置 PATH 环境变量,所以 git 命令必须打完整路径。

clipboard.png

Maven

IntelliJ 内置了一个 Maven,用它就好。但你需要写一个自定义的 settings.xml,把它放在 U 盘任意位置,然后在 IntelliJ 设置当中指定这个文件。

clipboard.png

命令行

创建一个命令行(cmd)的快捷方式,加上参数(如下图所示):

 /K setlocal & U: & set PATH=%PATH%;U:\JDK\bin;U:\Maven\bin;U:\Git\bin

图片描述

这里解释一下, /K 表示启动命令行的时候自动执行后面的命令。后面有三个命令,用两个 & 符号隔开。第一个命令是开始设置本地变量,第二个命令是跳转到 U 盘所在的根目录(你可以根据自己喜好换成别的目录,或者干脆不要这个命令也行),第三个是向 PATH 环境变量添加几个 U 盘上的路径,这样命令行启动之后你就可以直接键入 javamvngit 命令了。

环境变量

其实上面很多问题都是可以通过直接修改环境变量解决,但要考虑到一点就是,你可能用的是别人的电脑,随意修改环境变量是否会给别人带来麻烦,也是需要考量的。当然如果是在网吧的话,你想怎么胡来都行。

其他应用

如果你还有其他方面的应用要放到 U 盘上,这里推荐一个很方便的集成应用平台 PortableApps,这里面包含了很多开源软件的移动版,包括文本编辑、看图和图像编辑、办公软件、播放器、FTP服务器、浏览器、BT下载、数据库工具、系统监控、密码管理、压缩解压等等各类软件,完全可以满足开发需要。

存储介质

总的来说,越快越好。我用过各种移动介质,最理想的介质是 SSD 移动硬盘,因为经摔,机械移动硬盘容易摔坏了。

好的存储介质很难找,因为 U 盘里会有大量小文件,IDE 使用过程中对文件也会有大量的随机存取,特别是数据库,读写文件是最积极的。所以好用的 U 盘只看一个指标:4K 读写速度。只要这个速度上来了,其他都好说。

另外有些电脑用的是老式的 USB2.0 接口,虽说 USB3.0 的 U 盘都向下兼容,但如果 USB 口供电不足,会导致 U 盘使用过程中突然断开。


捏造的信仰
2.8k 声望272 粉丝

Java 开发人员