2012-12-31 52 views
25

要打開「ECLIPS e「,你需要一個Java SE 6運行時。您想現在安裝一個 嗎?

  • (中端)which java - /usr/bin/java

  • ls -l /usr/bin/java - /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

  • (在Finder中)雙擊月食別名(包括當解壓下載) - 終端的推出,/Applications/Eclipse/Eclipse.app/Contents/MacOS/eclipse ; exit ;和Exclipse在沒有OS X警報提示的情況下啓動。

我試着修改了Eclipse的應用程序包的plist來點-vm關鍵/System/Library/Frameworks/JavaVM.frameworks/Versions/Current/Commands/java,但我覺得我可能不該'不必這樣做。'

我想知道如何通過雙擊應用程序包來啓動Eclipse。這是一個小東西來bug我...:o)

+1

它說你需要的Java 6,Java 7的,並不意味着Java 6的多項新功能 – Alex

+0

@AlexYan我不知道我的理解。我的系統上沒有安裝Java 6,但是Eclipse將在命令行'/ Applications/Eclipse/Eclipse.app/Contents/MacOS/eclipse'中執行時運行。這表明我不需要同時安裝Java 6和Java 7.請你澄清一下嗎? – edelaney05

+1

我的意思是Java 6和7是不同的。擁有JRE7並不一定意味着所有在Java 7下編寫的Java程序都將運行。去年我的一個學校項目在JRE7中的運行方式與在JRE6中的運行方式不同。 Eclipse可能會嚴格檢查這種事情,我不確定 – Alex

回答

6

我找到了答案,在上Ask Different

這是一個醜陋的黑客攻擊,但完美的作品。

+0

@ Hisham's [answer](http:// stackoverflow .com/a/19580605/166339)比醜惡的黑客更好。 – Asaph

+0

我並不反對這是一種技術上優秀的啓動Eclipse的方式,但它並沒有回答我原來的問題:「我想知道如何通過雙擊應用程序包來啓動Eclipse。」 – edelaney05

+2

您是否願意將Eclipse添加到您的碼頭?如果是這樣,你可以用@Hisham的[回答](http://stackoverflow.com/a/19580605/166339)將它記下來。只需從命令行啓動Eclipse一次,然後至少拖動一個空格停靠它即可。從那一刻開始,只需點擊停靠的Eclipse項目即可。 (您可能必須允許執行未簽名的程序,尤其是如果您在未初始設置的情況下運行小牛隊)。 – Asaph

3

希望你正在使用64位的Java SE 1.7.0,並建議如下。

  1. 轉到Eclipse的>首選項...-> Java的>安裝的JRE
  2. 點擊添加...
  3. 選擇標準VM
  4. /Library/Java/JavaVirtualMachines/1.7.0.jdk/Contents/HomeJRE家
  5. 變化將JRE名稱改爲Java SE 7
  6. 單擊Finish(完成)
  7. 選中新創建的JRE旁邊的複選框。

您需要重新啓動。

+1

不用找了。我仍然收到來自OS X的相同消息。另外,JRE位置已經顯示在已安裝的JRE窗口中(剛剛列出爲'(MacOS X Default)') – edelaney05

1

設置新的mac並嘗試運行僅安裝了Java SE 7的eclipse 4.2.2(作爲JDK 7u17的一部分)時,我得到了完全相同的消息。

爲了能夠成功啓動Eclipse,我必須讓OSX在安裝最新的JDK之前首先下載並安裝Apple的Java SE 6運行時。

安裝JDK,命令後java -version正確顯示:

java version "1.7.0_17" 
Java(TM) SE Runtime Environment (build 1.7.0_17-b02) 
Java HotSpot(TM) 64-Bit Server VM (build 23.7-b01, mixed mode) 

試圖解決的其他方式沒有工作的問題 - 即安裝Java SE 6在提出之前,首先安裝JDK 7u17消息。

4

發佈此網頁上:Mountain Lion with Java 7 only

欺騙OS X接受,而不是提出要安裝Java 6的簡單符號鏈接的Java 7點就足夠了

須藤的mkdir /系統/圖書館/的Java/JavaVirtualMachines

須藤LN -s /Library/Java/JavaVirtualMachines/1.7.0.jdk /System/Library/Java/JavaVirtualMachines/1.6.0.jdk

大多數Java程序都可以在不需要安裝Java 6的情況下運行這個小程序。OS X的Java首選項(也可能是其他的)不會像它啓動時顯式檢查JVM的版本。

上面的腳本可以解決我的問題。

+0

對不起以前的評論和downvote,請忽略。 –

0

如果您只想安裝Java 6 JDK(無Java 7 JDK/JRE,僅適用於Java 6 JRE),請安裝Apple OSX Java DMG(撰寫本文時爲http://adcdownload.apple.com/Developer_Tools/java_for_os_x_2013003_developer_package/java_for_os_x_2013003_dp__11m4406.dmg)。

您仍然無法啓動Eclipse。製作目錄JavaVirtualMachines根據/系統/庫/ Java。然後進行Java版本的文件夾的別名在/圖書館/的Java/JavaVirtualMachines和重命名別名1.6.0.jdk和複製別名/系統/圖書館/的Java/JavaVirtualMachines/

完成之後,您將在位於*/Library/Java/JavaVirtualMachines/1.6.0_XX-XXX-XXX.jdk的指向Java安裝目錄的Alias位於/System/Library/Java/JavaVirtualMachines/1.6.0.jdk *

3

你能想象嗎?即使您已經安裝了jdk 1.7,您也必須安裝JDK 1.6以正確運行eclipse,並正確設置JAVA_HOME。

要解決您的問題,您只需要從http://support.apple.com/kb/DL1572?viewlocale=en_US下載jdk1.6並安裝它,稍後您將能夠運行eclipse,並且您可以將JAVA_HOME設置爲JDK1.7,並且您將能夠從eclipse「Preferences」中找到JDK1.7。

9

我安裝了JDK 7,並且我通過從終端代替查找器運行eclipse來解決eclipse Kepler的這個問題。

./eclipse 

只是想分享。

更新1

爲了完整起見,如果你想從Finder中運行它,以及,你可以包裝./eclipse命令到。命令文件並從Finder中運行它(這樣就不必打開終端)

以下行應該做這個工作(不要忘記用eclipse替換「your-full-eclipse-path」你的機器上的路徑)

#!/bin/sh 
/your-full-eclipse-path/eclipse 

之後,給執行權限到您剛纔創建

chmod +x eclipse.command 
+1

+1這是最好的答案。比添加符號鏈接或安裝Java 6好得多。它只是起作用。 – Asaph

+0

比其他解決方案容易得多 – Deepend

+1

沒有爲我工作。當我雙擊我創建的shell時,我在終端中得到以下內容: 無法找到與架構「x86_64」匹配的任何JVM。 目前沒有Java運行時,請嘗試安裝--request。 不存在Java運行時,請求安裝。 我已確認我已安裝JRE 7。 – czw

0
  1. 安裝來自Sun最新的JDK的eclipse.command文件,將其安裝到/Library/Java/JavaVirtualMachines/,例如/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk

  2. sudo mkdir /System/Library/Java/JavaVirtualMachines

  3. sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/ /System/Library/Java/JavaVirtualMachines/1.6.0.jdk

=========這一招用來對山獅的工作,但不是在小牛10.9莫名其妙====== ======

在特立獨行上試了一遍,它不再工作了。我也嘗試更改eclipse應用程序plist和eclipse.ini(通過添加-vm或),也不起作用。

有些人認爲這是由Eclipse的二進制利用蘋果1.6 appbundler,而不是甲骨文java7 appbundler編寫的原因造成的:Application is using Java 6 from Apple instead of Java 7 from Oracle on Mac OS X?

現在,請只需鍵入命令行,它工作正常JAVA_HOME設置爲Java日食7(在/ usr/libexec目錄/ JAVA_HOME命令會告訴你)

+1

這似乎相當危險......版本之間的鏈接很可能會產生意想不到的後果。它背後的邏輯是什麼? – Stefan

0

如何使Eclipse運行在OS X 10.9小牛

嘗試推出各種Eclipse版本小牛升級會彈出此消息的對話框後:

要打開「Eclipse.app」,您需要Java SE 6運行時。你想現在安裝一個嗎?

enter image description here

事實證明,Java 7的默認情況下,在OS X 10.9禁用。

$ java --version 
No Java runtime present, requesting install. 

解決方案,就是安裝支持蘋果最新的支持Java版本:
此如下容易驗證Java for OS X 2013-005http://support.apple.com/kb/DL1572
截至13年10月15日,這將是Java SE的6 1.6.0_65。
發佈日期:2013年10月15日
文件大小:63.98 MB

安裝之後,Eclipse會運行從Dock中,在Finder或終端預期沒有任何技巧,黑客,或變通。

0

我想用Java 7運行Eclipse本身。因爲我有幾個插件,沒有它就無法運行。對於我來說,這兩個解決方案都沒有爲10.9工作,但我找到了解決方法。主要思想是,你用java -jar 啓動器 .jar啓動eclipse並提供一些魔術屬性,然後開始。

https://bugs.eclipse.org/bugs/show_bug.cgi?id=411361#c25

11

最好的答案是修復了Java 7的安裝如下所示: https://stackoverflow.com/a/19594116
簡單的事情,我已經證實了它的工作原理這傢伙爲我的作品發表了命令行腳本在小牛隊。使用此修復程序,您可以照常從啓動板啓動您的應用程序。如果升級JDK,則必須重新應用修補程序到新安裝。

2

對於它的價值,Eclipse團隊似乎都圍繞它通過更換他們的dlopen()的工作 - 與CFBundleCreate()的方法 - 一個基於:https://bugs.eclipse.org/bugs/show_bug.cgi?id=411361

如果任何人有同樣的問題,他們的我發現了一個更簡單的解決方法:在dlopen()之前$ JRE_HOME/lib/server/libjvm.dylib,確保打開dlopen()$ JRE_HOME/LIB/JLI/libjli.dylib。然後它不會要求安裝Java 6.

+0

感謝您的提示。 libjli.dylib也有_JNI_ *函數,看來我可以在不打開libjvm.dylib的情況下使用指向那些函數的指針。將不得不測試這一點。 – user2543253

+0

是的,只能使用libjli.dylib。 (首先想到它並沒有,但那是因爲代碼中的錯誤) – user2543253

1

前幾天我遇到了完全相同的問題,今天我解決了它。剛剛安裝了這個http://support.apple.com/kb/dl1572

然後,當我打開eclipse時,OSX通過Eclipse.app安裝了一些java更新和打開eclipse,開始工作。

希望它能與您合作。

2

所有這些黑客無法在mac小牛, 但一個簡單而有效的解決方案被發現here 它與我一起工作就像一個魅力。

注:這種解決方案的缺點是,當你使用「Java的版本」命令檢查你的Java版本,它會讀取Java 1.6的

0

,我發現了同樣的問題(Mac OS X的10.9.2, Java 1.7.0_53b13,Eclipse Kepler)。解決方法是相當簡單:

  1. 查找查找可執行文件(CMD +點擊Eclipse的Dock中的圖標)
  2. 從Dock
  3. CTRL刪除的圖標在Finder中
  4. +點擊可執行
  5. ALT +打開(允許非簽名的應用程序的執行)
  6. Eclipse的正常打開和沒有任何問題
  7. 重新拖動的程序到所述基座
0

我有這個問題,發現我沒有在我的Mac上安裝JDK。一旦我這樣做,Eclipse就會正常啓動。

0

開放/Library/Java/JavaVirtualMachines/jdkXXXXX.jdk/Contents/Info.plist

settting(<string>BundledApp</string>是有用的!):

<key>JVMCapabilities</key> 
<array> 
  <string>JNI</string> 
  <string>BundledApp</string> 
  <string>WebStart</string> 
  <string>Applets</string> 
  <string>CommandLine</string> 
</array> 
0

我有同樣的問題。

首先; JDK(Java開發工具包)和JRE(Java運行時環境)是不同的東西。它被人們所迷惑

爲了安裝eclipse喲應該安裝最新的JDK。所以

  1. 訪問 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

  2. 下載適合的版本爲您的Mac

  3. 現在,您可以檢查您的版本;它不會是1.6了

  4. 嘗試再次安裝eclipse,看看它的工作原理。

祝你好運!..