具体用例:在 Eclipse IDE 中,可以通过将插件的文件复制到 $ECLIPSE_HOME/plugins
目录中来添加新的"插件"。但是,我想保持我的原始 Eclipse 安装"干净",而无需额外的插件,因为有时我想自己运行这个基本安装。
方法可以避免复制文件(因此无法运行干净版本),而是在逻辑上"覆盖"另一个目录的内容,使其在运行时看起来在目录中?
例如:
gravelld@gravelld-laptop:~$ ls $ECLIPSE_HOME/plugins/
org.junit_3.8.2.v200706111738
org.junit4_4.3.1
org.junit.source_3.8.2.v200706111738
gravelld@gravelld-laptop:~$ ls myplugins/
org.dangravell.myplugin.jar
gravelld@gravelld-laptop:~$ overlay myplugins/ $ECLIPSE_HOME/plugins
gravelld@gravelld-laptop:~$ ls $ECLIPSE_HOME/plugins/
org.dangravell.myplugin.jar
org.junit_3.8.2.v200706111738
org.junit4_4.3.1
org.junit.source_3.8.2.v200706111738
另一个用例可能是补丁等等......
可以使用符号链接或 mnt 为此做点什么吗?
谢谢!
你可以为此使用覆盖文件系统。我知道在Linux中的三个覆盖文件系统是unionfs,aufs和minifo。
Unionfs 包含在最近的 Ubuntu 内核中。
查看管理您的 eclipse 环境一文,尤其是方法 3
创建链接文件夹以管理产品扩展
如果您的文件系统上有产品扩展,就像我们在方法 1 中创建的产品扩展一样,您可以在 Eclipse 程序目录中创建几个简单的文件,以通知 Eclipse 它需要检查这些目录中的插件。
首先,在 Eclipse 安装文件夹(例如/opt/eclipse)中创建一个名为 links 的目录。在此文件夹中,可以创建 *.link 文件(例如,emfPlugins.link)。每个链接文件都指向一个产品扩展位置。Eclipse 将在启动时扫描此链接文件夹,并在链接文件指向的每个产品扩展中找到插件。
尽管新的 p2 配置系统完全不同,但在 eclipse3.4 中仍然支持此功能。
<小时 />现在已知了"链接"目录机制,这意味着原版日食和具有自定义常见插件的日食之间的区别只是该"链接"目录的存在。
那么,为什么不有一个"香草日食分布",里面有一个符号链接,"链接",指向../链接?
任何获得原版日食的用户最初都不会有"链接"目录,因此它将作为香草发行版运行。但是一旦用户创建了一个链接目录或创建另一个指向公共远程"链接"目录的符号链接,该发行版将拾取常见的插件远程目录......
/path/links -> /remote/links/commonPlugins
/eclipse/links -> ../links
<小时 />最后,如果您使用给定组"aGroup"创建"/remote/links/commonPlugins",并使用"750"掩码保护它,则您自己将有一个日食设置,它将是:
- 适用于"id -a"不包含"aGroup"的任何用户的原版日食
- eclipse与"aGroup"的任何用户部分的插件