Macos 在OSX上编译用于Java7u7(包含JavaFX2.2)的scalafx
本手册的编写说明说明如下:Macos 在OSX上编译用于Java7u7(包含JavaFX2.2)的scalafx,macos,scala,javafx-2,scalafx,Macos,Scala,Javafx 2,Scalafx,本手册的编写说明说明如下: export JAVAFX_HOME=/Path/To/javafx-sdk2.1.0-beta sbt clean compile package make-pom package-src 然而,随着JavaFX作为JavaJDK本身的一部分的新打包(即,OSX的7u7),似乎不再有这样的“JavaFXSDKx.X.X”文件夹。Oracle文档说JavaFXJDK与主JavaJDK放在一起(在相同的文件夹中) 因此,我: $ export JAVAFX_HOME=
export JAVAFX_HOME=/Path/To/javafx-sdk2.1.0-beta
sbt clean compile package make-pom package-src
然而,随着JavaFX作为JavaJDK本身的一部分的新打包(即,OSX的7u7),似乎不再有这样的“JavaFXSDKx.X.X”文件夹。Oracle文档说JavaFXJDK与主JavaJDK放在一起(在相同的文件夹中)
因此,我:
$ 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?
$export JAVAFX_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_07.jdk
$sbt清洁
[警告]不推荐使用project/plugins/(/Users/asko/Sources/scalafx/project/plugins)进行插件配置。
[警告]将.sbt插件定义直接放入项目/,
[warn].project/project/中的scala插件定义,
[警告]并删除项目/插件/目录。
[信息]从/Users/asko/Sources/scalafx/project/plugins/project加载项目定义
[信息]从/Users/asko/Sources/scalafx/project/plugins加载项目定义
[错误]java.lang.NullPointerException
[错误]对完整日志使用“last”。
项目加载失败:(r)etry,(q)uit,(l)ast或(i)gnore?
是我做错了什么,还是scalafx与最新的Java版本(7u7,JavaFX2.2)不兼容。我能做什么
附录
…最后(遵循下面Igor的解决方案)sbt run
轻松启动彩色圆圈演示(如果有支持的GPU的话)。Oracle说“JavaFX支持任何Mac OS X系统的图形硬件加速,或者是狮子或更晚”,但我倾向于认为英伟达公司的Mac Mini我正在使用软件渲染。p>
不,即使是javafx MacBook Air(core i7)在其他方面速度都很快,但在演示中却表现得很慢。也许是演示。我做的是:
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行。ScalaFX中还有一个Gradebuild.gradle,我把它作为替代构建系统放在那里是的,它有。我不敢相信我自己没有打开“build.sbt”(我仍然认为它们很神奇,我猜!)对于那些应用这个建议的人,请注意这是“JAVA_HOME”(不是JAVAFX_HOME),谢谢。嘿,惊人的巧合,我碰巧从JAVAFX开始,也面临MacOS X问题。这是雪豹兼容吗?我想甲骨文在他们的网页上提到了“狮子及以上”。是(“10.7.3”或更高)。