16

我目前正在尝试将 Eclipse 设置为从 /opt/eclipse 运行。

一切都很顺利;我使用 Eclipse 安装程序将软件解压缩到 /opt/eclipse;我在我的 /usr/bin 目录中创建了一个指向它的软链接,这样我就可以在我的用户终端的任何地方输入“eclipse”来运行它,我以为我已经完成了,直到发生这种情况:

$ eclipse /root/.p2/pool/plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.400.v20160518-1444: 无法打开共享对象文件: 权限被拒绝 Gtk-Message: GtkDialog 映射没有临时父级. 这是不鼓励的。

在 /opt/eclipse/eclipse.ini 和 /opt/eclipse/configuration/config.ini 文件中进行了一些探索后,我得出的结论是,当我在超级用户权限下使用安装程序安装 Eclipse 时,它​​在 / 下安装了必要的库根目录。

我可以使用“sudo eclipse”并且它可以工作,但是每次都必须输入我的密码变得很麻烦。我正在考虑复制 /usr/lib 下的 .p2 文件以“概括”它并允许以我的用户身份从任何 pwd 访问;这是一个聪明的主意还是我应该做其他事情?

4

5 回答 5

12

.p2 文件夹是由安装程序创建的所有 Eclipse 实例引用的共享安装文件夹。可悲的是,我认为移动现有版本并不安全(我可能错了,但我不确定它被引用了多少次),但您可以创建一个新版本。

安装程序在这里使用的概念称为“捆绑池”,您可以根据需要设置任意多个位置。要打开捆绑池设置,请在安装程序 UI 中找到相应的项目。

如果是简单的 UI,请按顶部的菜单底部 (1),然后选择 Bundle pools...: 带有简单 UI 的捆绑池设置

如果您使用高级 UI,向导第一页底部有一个下拉列表,其中包含现有捆绑包池的列表。通过单击它旁边的按钮,您可以进入捆绑池管理器。带有高级 UI 的捆绑池设置

在这两种情况下,在显示的对话框中,您都可以创建自己的捆绑池,您可以将其放入您想要的任何文件夹中,然后将其用作安装源。

最后,如果您已将所有安装移至此新池,则可以安全地删除原始捆绑池文件夹,不再需要它。

于 2016-06-16T18:43:30.080 回答
1

说我是用户me

  • /opt/eclipse在安装之前,更改with的所有权,sudo chown -R me:me /etc/eclipse这样我就可以启动envince-installerwithout sudo 权限。
  • 以简单模式安装/opt/eclipse。没有/root/.p2创建文件夹。树.p2已安装到我的主目录中(但如另一个答案所示,您也可以自定义它)
  • /etc/eclipse安装后,恢复with的所有权sudo chown -R root:root /etc/eclipse。现在我可以在没有 sudo 权限的情况下启动可执行文件,/opt/eclipse因为不需要访问/root.
  • 我在启动器菜单中创建了一个别名甚至一个项目,以从桌面环境启动 Eclipse。

我的规格:Ubuntu 14.04 LTS,Java SE Runtime Environment build 1.8.0_111-b14,Eclipse Installer 1.6.0 Build 2790,Eclipse Neon

于 2017-01-07T16:19:26.307 回答
1

我遇到了同样的问题(主目录变得很大)并做了一个破解:

$ mv ~/.p2 /opt/eclipse/p2
$ ln -s /opt/eclipse/p2 ~/.p2

eclipse 安装程序(......和 ​​eclipse 本身)似乎对符号链接感到满意,并且“池”信息现在托管在 /opt/eclipse 区域中并在那里占用磁盘空间。

可能必须获得一些超级用户权限才能进行第一步,但它确实适用于开放权限和多个用户将符号链接添加到同一区域。

于 2018-07-02T19:42:52.093 回答
1

遇到相同类型的问题,我认为应该对实际安装程序进行更多解释。然而,与上面类似,这是我所做的,以获得非 root 用户可以使用的安装,并将所有“eclipse”存储在同一个地方。

1)清理初始实验造成的混乱:

  • 从 /root 删除这些文件夹:.p2、.eclipse、eclipse
  • 删除解压后的安装程序
  • 删除 /root/ 中安装的所有内容

2)创建以下文件夹:

  • /选择/日食
  • /opt/eclipse/installer(在此处解压缩您的安装程序)
  • /opt/eclipse/池
  • /opt/eclipse/安装

以 sudo 运行安装程序。在 GUI 上选择 Advanced install 选项并在 /opt/eclipse/pools 文件夹中添加一个新的池代理。选择安装文件夹为 /opt/eclipse/install。安装后删除 /root 中所有新创建的文件夹“.p2”、“.eclipse”、“eclipse”。

可执行文件现在是 /opt/eclipse/install/eclipse/eclipse 并且可以由非 root 用户启动。此外,您可以以非 root 用户身份安装新软件包,例如 PyDev。

于 2019-08-15T10:10:27.733 回答
0

假设,eclipse是安装便携式 eclipse 的文件夹: - 关闭 eclipse - 在 eclipse 下创建一个文件夹(即myDATA) - 编辑eclipse\eclipse.ini - 在条目-vmargs下插入:-Duser.home= .\myDATA (注意-Duser.home稍后会在 ini 文件中被覆盖!) - 重新启动 eclipse

现在你可以在任何你想要的地方复制eclipse。

于 2018-12-05T19:17:03.910 回答