2012-12-20 46 views
7

我正在使用Max OS X Mountain Lion,java -version返回「1.6.0_37」。但是我不能用導入的com.apple.eawt。*類來編譯項目。com.apple.eawt - 我應該安裝什麼

我必須在我的系統上安裝Apple Java Extensions嗎?

任何幫助,將不勝感激!

更新

我收到以下從編譯器錯誤:

java: package com.apple.eawt does not exist 

更新-2

的XCode版本4.5.2安裝

更新 - 3

我的問題的原因是錯過了classpath中的ui.jar。感謝@Ian Roberts

+0

如果你澄清了這個問題,這將有所幫助。你需要com.apple.eawt類,還是你問是否需要它們? –

+0

我相信他想使用這些類,但是當他試圖導入它們時不能編譯。我可能是錯的,tho ... – jahroy

+0

@jahroy是正確的。我無法找到如何建立一個項目。 –

回答

4

沒有JAR下載或任何額外安裝的類是JDK在Mac OS X的一部分。在蘋果公司的Java,他們住在Contents/Classes/ui.jar的JDK軟件包(如/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Library/Java/JavaVirtualMachines/1.6.0_37-b06-434.jdk)下,在Oracle的JDK 6 Java 7,它們位於JRE主目錄(/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/Library/Java/JavaVirtualMachines/jdk1.7.0*.jdk/Contents/Home/jre)下的lib/rt.jar中。

+0

謝謝!在classpath中錯過了Ui.jar。 –

+1

如何將此添加到maven編譯器插件?我是新來的maven你能幫我嗎。 – Mubasher

+0

@Mubasher如果你在Mac上編譯,它應該是開箱即用的,如果你不在Mac上,那麼你需要編寫你的代碼來通過反射進行必要的調用([example](http:// sourceforge.net/p/gate/code/HEAD/tree/gate/tags/release-8.0/src/main/gate/gui/MainFrame.java#l1721))或者針對一個存根jar編譯相關的方法,例如http://ymasory.github.io/OrangeExtensions/ –

0

就像任何其他外部庫一樣,您必須將包含這些類的JAR添加到您的類路徑中。僅僅因爲你在Mac上運行並不意味着股票Java JDK是「擴展」的 - 否則,它不會真正與平臺無關。

+0

能否請您提供一個鏈接或至少一個谷歌搜索請求來獲得一個URI來下載這樣的JAR?我找不到它。 –

+0

實際上並非如此。蘋果爲Mac提供的JDK確實有一些內置的擴展。大多數蘋果的擴展都關心如何讓GUI的工作更像本機Mac應用程序(如com.apple.eawt和com.apple.laf)或者與QuickTime(quicktime。*) –

+0

如何爲gradle執行此操作?對'com.apple:AppleJavaExtensions:1.4'的依賴似乎不起作用 – Jochen