在Mac上打开多个Eclipse工作区


195

如何在Mac上同时打开多个Eclipse工作区?

在其他平台上,我只能启动额外的Eclipse实例,但是Mac不允许我两次打开相同的应用程序。有比保留两个Eclipse更好的方法吗?

Answers:


176

编辑: Milhous的答案似乎是从10.5开始的官方支持方式。但是,按照以下说明,OS X的早期版本甚至是10.5及更高版本仍然可以正常工作。


  1. 打开命令行(终端)

  2. 导航到您的Eclipse安装文件夹,例如:

    • cd /Applications/eclipse/
    • cd /Developer/Eclipse/Eclipse.app/Contents/MacOS/eclipse
    • cd /Applications/eclipse/Eclipse.app/Contents/MacOS/eclipse
    • cd /Users/<usernamehere>/eclipse/jee-neon/Eclipse.app/Contents/MacOS
  3. 启动Eclipse: ./eclipse &

最后一个命令将启动eclipse,并立即使进程后台运行。

冲洗并重复以根据需要打开任意多个Eclipse实例。


警告

您可能必须更改Tomcat服务器端口才能在不同/多个Tomcat实例中运行项目,请参阅Tomcat服务器错误-端口8080已在使用中


是的,但OP提到Mac。
Milhous

14
答案缺少路径的某些部分。例如,我的是:/Developer/Eclipse/Eclipse.app/Contents/MacOS/eclipse&
拉拉豆干

像为我写的那样工作。无需深入研究应用程序包。(尽管确实给了我我工作区已经打开的错误。)
Z O.

但是现在我无法关闭终端窗口,直到我关闭月食
Blundell

1
对于Mac,您也可以在终端中的任何目录中使用别名来做到这一点:alias eclipse ='open -n /Applications/eclipse/Eclipse.app'。-n用于“即使已经运行一个应用程序,也要打开一个新实例”。
杰弗里·马丁内斯

232

这似乎是OS X支持的本机方法:

cd /Applications/eclipse/

open -n Eclipse.app

确保指定“ .app”版本(目录);在OS X Mountain Lion中错误地使用符号链接(例如open -n eclipse)可能会导致一个GateKeeper停止访问:

无法打开“ Eclipse”,因为它来自身份不明的开发人员。

您的安全偏好设置仅允许安装Mac App Store和已确定的开发人员中的应用。

即使删除扩展属性com.apple.quarantine也不能解决该问题。相反,仅使用“ .app”版本将取决于您先前的同意,或提示您一次:

“ Eclipse”是从Internet下载的应用程序。您确定要打开它吗?


它也对我有用...工作完全正常。非常感谢
agrawalankur 2011年

辉煌-此帮助绝对为+1。真的不应该那么难...您是救命稻草。
iTrout 2013年

2
恕我直言,这是更好的答案,因为Eclipse仍然保持运行状态(即使您关闭Terminal
Scott White

1
对于Eclipse火星:./Eclipse.app/Contents/MacOS/eclipse
到Kra 2015年

这应该是公认的答案:-n Open a new instance of the application(s) even if one is already running.
阿列克谢蓝

176

到目前为止,最好的解决方案是http://torkild.resheim.no/2012/08/opening-multiple-eclipse-instances-on.html中提供的OSX Eclipse启动器。可以在市场http:// marketplace中下载它。 eclipse.org/content/osx-eclipse-launcher#.UGWfRRjCaHk

我每天都使用它,并且非常喜欢它!为了演示用法的简单性,请看以下图片:

演示插件用法的图像:只需转到文件/打开工作区/选择一个


13
真好 它甚至为Dock图标和任务切换器中的图标添加了漂亮的徽章。完善!
Arjan

7
到目前为止,这是最容易实施的解决方案,可以最好地解决问题的精神。仅根据他们的年龄,其他答案似乎得分较高。
Louth

这很容易走。如果您始终启动多个实例,则可以将该脚本编写到CLI中。但是,如果只是偶尔启动另一个实例,这就是方法。
贝恩2014年

2
我怀疑您没有在Java 7或更高版本上运行Eclipse。
torkildr 2015年

6
这是更新后的插件的当前链接:marketplace.eclipse.org/content/os-x-eclipse-launcher ..尤其相关,因为在Eclipse的交易市场网站上进行搜索现在会导致无限重定向...(叹气)
chaqke

23

为此,您需要导航到Eclipse.app目录并使用以下命令:

open -n Eclipse.app

这个解决方案对我来说是最好的选择,应该是公认的答案。
卡洛斯·弗洛雷斯

19

实际上,更好的(GUI)解决方案是将Eclipse.app复制到例如Eclipse2.app,并且在Dock中将有两个Eclipse图标,在Spotlight中将有Eclipse2。根据需要重复。


这实际上是我最终要做的。实际上,由于我在进行中的项目期间很少升级Eclipse,而是使用最新的Eclipse来启动新项目,所以我现在拥有三个不同版本的Eclipse,它们都在扩展坞中。
Thilo 2012年

1
我做了很多相同的事情,但是每个工作区都有一个应用程序副本,然后将其添加到Info.plist中:<string> -data </ string> <string> pathto / workspaces / myworkspace </ string>。那个插件加上一个根据工作区名称添加图标徽章的插件,我是一个快乐的露营者。
丹尼·托马斯

18

如果问题是如何轻松地在多个不同的工作空间中使用Eclipse ,那么您必须使用kludge,因为OS X中的快捷方式不提供传递命令行参数的机制,例如Eclipse用来传递“ --data”参数的机制。指定工作空间。尽管可能有不同的原因来创建Eclipse安装的重复副本,但为此目的是IMNSHO,la脚(现在您必须维护多个Eclipse配置,插件等)。

无论如何,这是一种解决方法。在(单个)Eclipse目录(包含Eclipse.app的目录)中创建以下脚本,并为其添加“ .command”后缀(例如eclipse-workspace2.command),以便您可以从中创建别名:

#!/bin/sh
# open, as suggested by Milhous
open -n $(dirname $0)/Eclipse.app --args -data /path/to/your/other/workspace

现在,在您的桌面或任何需要的位置为该文件创建一个别名。您可能必须为每个不同的工作空间重复此过程,但是至少它将使用相同的Eclipse安装。


1
解决方案为+1,我想输入一个参数,以使多个工作区具有不同的设置。作为承包商,您通常必须采用客户的风格和偏好。通过创建一个新的工作区,您可以轻松地在多个客户端之间划分您的工作。另外,在使用新帐户时,您可能必须支持旧帐户。使用此方案,您可以同时保持两个打开状态。我目前一直在工作空间之间进行切换,但是我喜欢这种方便的方式,可以根据需要立即打开两个(全部)。
mobibob 2011年

6

由于许多答案不再有效,因此2018年更新

OS X使用Eclipse Oxygen称重Sierra(10.13)

转到安装Eclipse的任何位置。右键单击->显示软件包内容->目录-> MacOS->双击名为eclipse的可执行文件

终端窗口将打开,新的eclipse实例将开始。

请注意,如果关闭终端窗口,新的Eclipse实例也将关闭。

在此处输入图片说明

为了使您的生活更轻松,您可以将可执行文件拖到扩展坞中以便于访问

在此处输入图片说明


4

无需复制Eclipse.app,而是创建一个运行上面的Shell脚本的自动化程序。

运行自动化程序,创建应用程序。

选择实用程序->运行shell脚本,然后添加上面的脚本(需要eclipse的完整路径)

然后,您可以将其作为普通应用拖到Dock中。

对其他工作区重复上述步骤。

您甚至可以简单地更改图标-https: //discussions.apple.com/message/699288?messageID=699288򪮘


4

另一种方法是仅复制“ Eclipse.app”文件,而不是制作整个eclipse目录的多个副本。右键单击“ Eclipse.app”文件,然后单击重复选项以创建重复项。


2

如果您像我一样,那么您大概也可以在大多数时间运行终端。您可以在/Users//.bash_profile中创建一个别名,例如该别名eclipse ='open -n path_to_eclipse.app'

那么您所要做的就是打开终端并输入eclipse。


2

根据先前对我有帮助的答案,但目录不同:

cd /Applications/Eclipse.app/Contents/MacOS
./eclipse &

谢谢


1

我前一段时间找到了这个解决方案,不记得在哪里了,但是对于我来说似乎仍然很好用。

为您要工作的每个工作区创建一个Eclipse.app的副本(对于本示例为ProjectB.app),然后打开ProjectB.app/Contents/MacOS/eclipse.ini并将这两行添加到文件的开头:

-data
/Users/eric/Workspaces/projectb

...替换您的工作区所在的位置。启动ProjectB.app时,它将自动从该工作空间开始,而不提示您输入位置,并且您应该能够与其他Eclipse实例同时运行,而不会出现问题。


复制整个eclipse应用程序确实浪费了磁盘空间
To Kra

1

在终端中,只需在行下方粘贴,然后按Enter。

/Applications/Eclipse.app/Contents/MacOS/eclipse; 出口;


1

您可以创建一个AppleScript文件以使用给定的工作区打开Eclipse。您甚至可以将AppleScript文件另存为应用程序,这等效于在Windows OS中使用参数创建别名。

打开脚本编辑器,然后键入以下内容:

do shell script "open '/path/to/your/Eclipse/installation' -n --args -data /path/to/your/workspace"

例如:

do shell script "open '/Applications/Eclipse.app' -n --args -data /MyWorkspaces/Personal" 

按“运行”按钮检查其是否正常运行。

该脚本可以原样保存,但我更喜欢将其另存为应用程序。这样,我可以通过将* .icns图标从原始Eclipse.app捆绑包复制到脚本应用程序捆绑包来自定义图标。

要打开App文件夹,请使用“查看内容”上下文菜单选项。它看起来应该像这样:

脚本应用程序的内容

其中“ main.scpt”是AppleScript文件,“ applet.icns”是原始Eclipse捆绑包中的图标。


0

一种更方便的方法:

  1. 如上所述创建一个可执行脚本:

    #!/ bin / sh

    cd / Applications / Adob​​e \ Flash \ Builder \ 4.6

    打开-n Adob​​e \ Flash \ Builder \ 4.6.app

  2. 在您当前的Flashbuilder或Eclipse实例中,添加一个新的外部工具配置。这是工具栏上调试/运行/配置文件按钮旁边的按钮。在该对话框中,单击“程序”并添加一个新程序。为其指定所需的名称,然后在“位置”字段中,输入步骤1中脚本的路径:

    /用户/用户名/ bin / flashbuilder

  3. 您可以在步骤2处停止,但是我更喜欢在工具栏上添加自定义图标。我使用快速启动插件来做到这一点:

    http://sourceforge.net/projects/quicklaunch/files/

  4. 添加插件后,转到“运行”->“组织快速启动”,然后从步骤2添加外部工具配置。然后,您可以为其配置图标。

  5. 保存之后,您将在工具栏中看到该图标。现在,您每次需要新的Flashbuilder / Eclipse实例时都可以单击它。


0

您可以通过在文件夹中为Eclipse应用程序创建一个假名并将其用于运行新的Eclipse实例来运行Eclipse的多个实例。


0

如果要打开多个工作区,你是不是一个终端的家伙,只需找到您eclipse文件夹Unix的可执行文件,并单击它。

所述文件的路径是

Eclipse(文件夹)-> eclipse(右键单击)->显示软件包内容->目录-> MacOs-> eclipse(unix可执行文件)

单击此可执行文件将打开一个单独的Eclipse实例。



-7
Window -> New Window

这将打开一个新窗口,然后您可以在其中打开另一个项目。您可以希望将其用作解决方法。

实际上,它允许您在同一工作区中工作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.