在Mac上打开多个Eclipse工作区
如何在Mac上同时打开多个Eclipse工作区?
在其他平台上,我只能启动额外的Eclipse实例,但是Mac不允许我两次打开相同的应用程序。有比保留两个Eclipse副本更好的方法吗?
解决方案
编辑:Milhous的答案似乎是从10.5开始的官方支持方式。但是,按照以下说明,OS X的早期版本甚至10.5及更高版本仍然可以使用。
- 打开命令行(终端)
- cd / Developer / Eclipse / Eclipse.app / Contents / MacOS / eclipse`
- cd / Applications / eclipse / Eclipse.app / Contents / MacOS / eclipse`
- cd / Users / <用户名此处> / eclipse / jee-neon / Eclipse.app / Contents / MacOS`
- 启动Eclipse:
./eclipse&
最后一条命令将启动eclipse,并立即使进程后台运行。
冲洗并重复以打开所需的任意多个Eclipse实例。
警告
为了在不同/多个Tomcat实例中运行项目,可能必须更改Tomcat服务器端口,请参阅已使用Tomcat服务器错误端口8080。
这似乎是OS X支持的本机方法:
cd /Applications/eclipse/ open -n Eclipse.app
确保指定" .app"版本(目录);在OS X Mountain Lion中错误地使用符号链接(如" open -n eclipse"),可能会使一个GateKeeper停止访问:
"eclipse" can't be opened because it is from an unidentified developer. Your security preferences allow installation of only apps from the Mac App Store and identified developers.
即使删除扩展属性" com.apple.quarantine"也无法解决该问题。相反,仅使用" .app"版本将取决于我们先前的同意,或者提示我们一次:
"Eclipse" is an application downloaded from the Internet. Are you sure you want to open it?
实际上,更好的(GUI)解决方案是将Eclipse.app复制到例如Eclipse2.app,在Dock中将有两个Eclipse图标,在Spotlight中将有Eclipse2. 根据需要重复。
我前一段时间找到了这个解决方案,不记得在哪里了,但对我来说似乎仍然很好用。
为我们要工作的每个工作区创建一个Eclipse.app的副本(对于本示例为ProjectB.app),然后打开ProjectB.app/Contents/MacOS/eclipse.ini并将这两行添加到文件的开头:
-data /Users/eric/Workspaces/projectb
...替换工作区所在的位置。启动ProjectB.app时,它将自动从该工作空间开始,而不提示我们输入位置,并且我们应该能够与其他Eclipse实例同时运行,而不会出现问题。
如果问题是如何轻松地在多个不同的工作空间中使用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 ##代码##)/Eclipse.app --args -data /path/to/your/other/workspace
现在,在桌面或者所需的任何位置创建该文件的别名。
我们可能必须对每个不同的工作区重复此过程,但是至少它将使用相同的Eclipse安装。