我应该在哪里放置与Mac RCP应用程序捆绑的Java 7 jre?

我应该在哪里放置与Mac RCP应用程序捆绑的Java 7 jre?,java,eclipse,eclipse-rcp,equinox,Java,Eclipse,Eclipse Rcp,Equinox,我有一个基于Eclipse3.8.1的Mac RCP应用程序,它已经被重新组织成一个APPL应用程序包。我在Mac上遇到了一个问题,在程序关闭时,我无法通过文件关联(双击Finder)或拖放到Dock/app来打开应用程序中的文件。应用程序启动,但文件无法打开 这在我使用Apple Java 6时没有发生。我最近升级到Oracle Java 7并开始注意到这个问题。我正在使用-vm参数来定义绑定vm的位置。如果我删除这个参数,Equinox会自动找到我的JDK7安装,问题就解决了。我不能依赖第三

我有一个基于Eclipse3.8.1的Mac RCP应用程序,它已经被重新组织成一个APPL应用程序包。我在Mac上遇到了一个问题,在程序关闭时,我无法通过文件关联(双击Finder)或拖放到Dock/app来打开应用程序中的文件。应用程序启动,但文件无法打开

这在我使用Apple Java 6时没有发生。我最近升级到Oracle Java 7并开始注意到这个问题。我正在使用-vm参数来定义绑定vm的位置。如果我删除这个参数,Equinox会自动找到我的JDK7安装,问题就解决了。我不能依赖第三方JDK安装;我希望Equinox在不定义-vm参数的情况下找到绑定的jre

说明3.8.1中支持这一点。我需要把我的jre目录放在哪里才能工作?以下是我的捆绑包的体系结构:

|-> configuration/config.ini
|-> Contents
  |-> Info.plist
  |-> MacOS
    |-> RCPapp (launcher)
    |-> RCPapp.ini
  |-> Resources
|-> plugins/*.jar
这是ini文件中的我的启动器:

-startup
../../plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
--launcher.library
../../plugins/org.eclipse.equinox.launcher.cocoa.macosx.x86_64_1.1.200.v20120522-1813/eclipse_1503.so
--launcher.defaultAction
openFile
-clean
-vmargs
-Xmx768m
-Dosgi.locking=none
-Dosgi.requiredJavaVersion=1.7
-Dvisualvm.display.name=RCPapp
-Dserver_host=localhost
-Dcom.dnastar.debugPrint=false
-XstartOnFirstThread
-Dorg.eclipse.swt.internal.carbon.smallFonts
似乎表明java可执行文件应该位于相对于启动器的“../../../jre/Contents/Home/jre/bin/”中,因此我将我的“OracleJDK目录重命名为jre”放在RCPapp.app旁边并启动。我收到一个不兼容的JVM错误(JVM的1.6.0_65版本不适用于此产品。需要1.7或更高版本。)


Equinox启动器是否有一个“神奇”的位置可以自动识别捆绑的Java 7 jre?

@MartijnCourteaux,您的评论既没有建设性,也没有信息。Oracle建议将JRE与Mac上的Java应用捆绑在一起:我不知道这一点。美好的