2012-10-16 28 views
3

scalafx彙編指令說,要做到:爲Java 7u7(包含JavaFX的2.2)在OS X上編譯scalafx

export JAVAFX_HOME=/Path/To/javafx-sdk2.1.0-beta 
sbt clean compile package make-pom package-src 

然而,使用JavaFX的新包裝作爲Java JDK本身的一部分(即7u7 for OS X)那裏似乎不再是這樣一個'javafx-sdkx.xx'文件夾。 Oracle文檔說,JavaFX JDK與主Java JDK(位於相同的文件夾中)放在一起。

所以我做的:

 
$ export JAVAFX_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_07.jdk 
$ sbt clean 
[warn] Using project/plugins/ (/Users/asko/Sources/scalafx/project/plugins) for plugin configuration is deprecated. 
[warn] Put .sbt plugin definitions directly in project/, 
[warn] .scala plugin definitions in project/project/, 
[warn] and remove the project/plugins/ directory. 
[info] Loading project definition from /Users/asko/Sources/scalafx/project/plugins/project 
[info] Loading project definition from /Users/asko/Sources/scalafx/project/plugins 
[error] java.lang.NullPointerException 
[error] Use 'last' for the full log. 
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? 

我是不是做錯了什麼或者是scalafx最新的Java版本(7u7,JavaFX的2.2)尚未兼容。我能做什麼?

http://code.google.com/p/scalafx/

附錄

..和最後(按照以下伊戈爾的解決方案)sbt run推出豐富多彩的圈子演示容易(當然,如果一個人有一個支持GPU即是)。 Oracle claims「JavaFX支持Lion或更高版本的任何Mac OS X系統上的圖形硬件加速」但我傾向於認爲我使用的NVidia驅動的Mac Mini做軟件渲染。

沒有,即使是其他快速與javafx MacBook Air(核心i7)是緩慢的演示。也許這是演示。

回答

4

我所做的是:

hg clone https://code.google.com/p/scalafx/ 
cd scalafx 
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_07.jdk/Contents/Home 
sbt clean compile package make-pom package-src 

它的工作原理。 看來,最新的代碼簽出包含對與SDK捆綁在一起的JavaFX的支持。檢查build.sbt文件,線路106

+0

是的,它的作用。我無法相信我自己並沒有打開'build.sbt'(我仍然認爲它們是魔術,我猜!)對於那些應用此建議的人,請注意它是'JAVA_HOME'(而不是JAVAFX_HOME)。 – akauppi

+0

嘿,非常巧合,我剛剛開始使用JavaFX並面臨着MacOS X的問題。這個雪豹是否兼容? – pedrofurla

+0

我認爲甲骨文在他們的網頁上提到了'Lion and above'。是(「10.7.3」或更高)。 http://www.oracle.com/technetwork/java/javafx/downloads/supportedconfigurations-1506746.html – akauppi

0

還有一個等級的build.gradle在ScalaFX,我把那裏作爲一種替代構建系統