背景
华为事件,让国人不得不考虑在技术方面替代美国技术的问题,作者这几天也尝试安装了一些常见的linux系统,包括国人的Deepin和ubuntu。在其中一些经验整理出来,供大家一阅。
问题重现
技术人员安装linux操作系统后肯定是要安装一些工作中使用的IDE,在安装完ubuntu 18.4后,直接使用其内置软件商城中来安排Eclipse。一切都很顺利,在导入之前的Springboot项目时,因为项目中使用了lombok,所以还要手动安装。参照windows的作法:
sudo java lombok.jar
尽然没有直接找到IDE,最后手动定位到安装目录/snap/eclipse/48/eclipse。这里就“snap”其实需要引入一个新的概念。
什么是snap,snap是一种全新的软件包管理方式,它类似一个容器拥有一个应用程序所有的文件和库,各个应用程序之间完全独立。所以使用snap包的好处就是它解决了应用程序之间的依赖问题,使应用程序之间更容易管理。但是由此带来的问题就是它占用更多的磁盘空间。
Snap的安装包扩展名是.snap,类似于一个容器,它包含一个应用程序需要用到的所有文件和库(snap包包含一个私有的root文件系统,里面包含了依赖的软件包)。它们会被安装到单独的目录;各个应用程序之间相互隔离。使用snap有很多好处,首先它解决了软件包的依赖问题;其次,也使应用程序更容易管理。
df
Eclipse的安装目录100%空间被使用,可见其类似一个沙盒是只读的。这样在install/update时,提示安装失败。
如何解决此问题,去下载非snap的安装包,手动安装。当然这是最简单也最直接的方法。官网下载。
解决问题
1、重新回顾lombok的安装界面,其提示已经说明了其所谓的安装其实就是做两件事情:
- 将lombock.jar拷贝到安装目录下。
- 在启动配置文件eclipse.ini追加 -javaagent:lombok.jar。
2、将ecliplse.ini和lombok.jar都拷贝到一个任一目录中(有读写权限即可),如/project/run/software/eclipse/中。
3、修改/project/run/software/eclipse/eclipse.ini的文件最后一行增加
-javaagent:/project/run/software/eclipse/lombok.jar。
4、修改启动脚本eclipse_eclipse.desktop,如果你不知道启动脚本的位置,建议安装 Menulibre(sudo apt-get install menulibre)
* 打开 Menulibre
* 搜索 " eclipse"
* 修改command输入框,本例中
/snpa/eclipse/48/eclipse %f
修改为
/snpa/eclipse/48/eclipse --launcher.ini /project/run/software/eclipse/eclipse.ini %f
Happy coding!
参考
https://www.xceno.io/posts/2019-05-15-install-lombok-to-eclipse-snap