OS X Mountain Lion に e(fx)clipse プラグインをインストールしました。Eclipse を起動すると、次のエラー メッセージが表示されます。
Java7 または Java8 で Eclipse インスタンスを実行していません。このため、JavaFX ツールは無効になっています。Java7/8 をデフォルトのシステム java にするか、eclipse.ini を調整して、Java7/8 インストールを指す -vm を渡します。このチェックをオフにしたい場合は、設定を開き、[一般] > [起動とシャットダウン] に移動して、[JavaFX Tooling Java Check] のチェックを外します。
そこで、JAVA_HOME を確認し、次の行を my に追加しました.profile
。
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home
そして私のJavaは今:
Kinnlas-MacBook:libexec kinnla$ java -version
java version "1.7.0_25"
Java(TM) SE Runtime Environment (build 1.7.0_25-b15)
Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
しかし、まだ同じエラーメッセージが表示されます。私も変更しようとしましたeclipse.ini
:
-vm
/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home/bin/java
別のエラーメッセージが表示されます:
JVM 共有ライブラリ "/Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk" に JNI_CreateJavaVM シンボルが含まれていません。
だから私は元に戻りeclipse.ini
、シェルからEclipseを起動しようとしました:
java -jar /Applications/eclipse/plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
起動は次のエラー ログで失敗しました:
!SESSION 2013-07-20 14:42:49.845 -----------------------------------------------
eclipse.buildId=M20130204-1200
java.version=1.7.0_25
java.vendor=Oracle Corporation
BootLoader constants: OS=macosx, ARCH=x86_64, WS=cocoa, NL=en_US
!ENTRY org.eclipse.equinox.ds 4 0 2013-07-20 14:42:52.305
!MESSAGE [SCR] Exception while activating instance org.eclipse.e4.ui.css.swt.internal.theme.ThemeEngineManager@5b094702 of component org.eclipse.e4.ui.css.swt.theme
!STACK 0
java.lang.NoClassDefFoundError: org/eclipse/swt/widgets/Display
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2521)
at java.lang.Class.getDeclaredMethods(Class.java:1845)
at org.eclipse.equinox.internal.ds.model.ServiceComponent.getMethod(ServiceComponent.java:126)
at org.eclipse.equinox.internal.ds.model.ServiceComponent.activate(ServiceComponent.java:213)
at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.activate(ServiceComponentProp.java:146)
at org.eclipse.equinox.internal.ds.model.ServiceComponentProp.build(ServiceComponentProp.java:345)
at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponent(InstanceProcess.java:620)
at org.eclipse.equinox.internal.ds.InstanceProcess.buildComponents(InstanceProcess.java:197)
at org.eclipse.equinox.internal.ds.Resolver.buildNewlySatisfied(Resolver.java:473)
at org.eclipse.equinox.internal.ds.Resolver.enableComponents(Resolver.java:217)
at org.eclipse.equinox.internal.ds.SCRManager.performWork(SCRManager.java:816)
at org.eclipse.equinox.internal.ds.SCRManager$QueuedJob.dispatch(SCRManager.java:783)
at org.eclipse.equinox.internal.ds.WorkThread.run(WorkThread.java:89)
at java.lang.Thread.run(Thread.java:724)
Caused by: java.lang.ClassNotFoundException: org.eclipse.swt.widgets.Display
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 15 more
手がかりはありますか?事前にthx!