背景

认什么?知什么?做什么?真的是认知决定了行动呐!从3月份开始种草 Mac 笔记本,3月份下单没有付款,一个月后涨价了一千,就搁置了。618 的时候看价格又降了,咬咬牙下单买了,到现在除了看了几次视频,没碰过。

最近剖析了一下,为什么买了新电脑又不愿意用呢?还是认知在作怪:认为熟悉了 Windows 的开发过程,认为现在这个电脑还能运行,认为等两分钟让它慢慢恢复响应也不是什么大事,认为换 Mac 切换太麻烦……

殊不知,就像温水煮青蛙一样,耐心一点点被旧电脑消耗了。问了自己三个问题:

  1. 认不认 Mac 本速度快?认。
  2. 知不知道怎么切换?不知道。
  3. 该怎么做?学。

也就花了一天的时间,就把 windows 上日常开发需要的软件配置完成了,没有想象的那么复杂。总的一点就是,类 Linux ,切换到命令的思维上就好了。本文来汇总一下在 Mac 上进行 Java 开发的环境配置过程。

程序清单

日常开发用的软件,也没多少:

mac系统下开发java(压箱底的Mac终于见光了)(1)

弄好这几个软件的配置后,进行日常开发工作足够了,那些 Apache 的解压版本的工具,跟 Linux 上类似,解压配环境变量就可以了,比如 tomcat、Zookeeper等。

Mac 基础配置

Mac 系统的基础用法:

  1. 快捷键跟 Windows 有差异,ctrl 系列的快捷键需要替换成 command。
  2. 右键,需要走系统配置整。
  3. 大小写切换:先按中英文切换到英文,需要大写时一直按 Shift。
  4. Command 空格:特别好用的搜索工具。
SnailSVNLite 文件权限问题

SVN 替代软件,在 App Store中可以下载,下载后配置好了,在任何目录,就会多一个 SVN 的操作标示。

mac系统下开发java(压箱底的Mac终于见光了)(2)

检出过程中,如果报出了“ SnailSVNLite svn: E000013: Can’t create directory Permission denied ” 错误,是因为该检出目录权限限制,需要在终端中进入该目录,修改目录的所有者为当前用户 :

chown -R userName targetDir

IDEA2019.3.5 Crack 配置

使用 jetbrains-agent.jar 的方式对 IDEA 进行 Crack 时,修改 vm.options 配置需要在 IDEA 打开后修改工作空间的配置,而非直接在 /Applications/IDEA/Contents/bin 目录下修改。

mac系统下开发java(压箱底的Mac终于见光了)(3)

在最后一行追加配置:

-javaagent:/Applications/IntelliJ IDEA.app/Contents/bin/jetbrains-agent.jar

maven 安装环境变量问题

解压 maven 后,在 ~/.bash_profile 中配置了环境变量,并执行 source 命令后,下次使用 mvn 命令还是报 command 不存在的问题。

问题原因:macOS 默认的配置文件是 ~/.zshrc。

解决办法:在该文件中添加一条配置:

source ~/.bash_profile

IDEA maven 配置

IDEA 中导入maven 工程时,仓库配置信息很重要,否则导入工程会非常慢。而 IDEA 中的配置,有存在两个地方,当前工程的 maven 配置和其他新导入工程的配置。

第一次打开某个工程时,会使用 IDEA 的默认配置,必须重新配置它的 maven 信息:

mac系统下开发java(压箱底的Mac终于见光了)(4)

点开这个”扳手“,就能看到这个项目使用的 maven 配置和仓库路径了。

其他项目的maven 配置:

mac系统下开发java(压箱底的Mac终于见光了)(5)

找到 Build 工具项中的 maven:

mac系统下开发java(压箱底的Mac终于见光了)(6)

如果项目下载依赖时,仓库目录下没有成功下载一个文件,说明当前项目使用的不是你配置的路径,必须点开 maven 配置看看,确保上面两个地方的配置是一样的。

Java 开发的小问题

还有两个小问题。

第一, JDK 11 没有 CORBA 模块

JDK11 中移除了 CORBA 相关的包,JDK1.8中该包位于 rt.jar 中。当前项目中如果用到了这个模块,会编译报错。所以,确定 JDK 的版本很重要,与项目版本一致。

第二,IDEA 的控制台输出有乱码。

mac系统下开发java(压箱底的Mac终于见光了)(7)

这个是 maven 编译时输出的乱码,解决办法是,为 maven 的Runner 设置 vm 参数:

mac系统下开发java(压箱底的Mac终于见光了)(8)

重启 IDEA 后再执行 mvn install 命令,输出就正常了:

mac系统下开发java(压箱底的Mac终于见光了)(9)

原来那个A 上面带个圈的是中括号啊!

启示录

Mac 自带的 VPN 和 SSH ,可以直接用,其他软件都能下载 MAC 版本,目前还没有找到文本编辑器 EditPlus 的替代版本,vi 还勉强能用,把项目日常开发需要的环境都配置齐全了。

最后,感谢互联网,每个问题都能搜到解决办法,没有解决办法的 SnailSVNLite 的权限问题,也根据自己对权限问题的判断,类比为 Linux 上 SVN 权限问题给解决了。

无人驾驶汽车服务都已经在北京全面放开了,开放思维,拥抱新事物吧!

,