我有一个基于JavaFX的Scala程序,可以在控制台模式和gui模式下运行.我可以在sbt中以控制台模式运行它多次.但是,如果我将它作为gui应用程序运行,那么它第一次运行.当我关闭窗口并尝试第二次运行它时,我收到以下错误消息:
> > run
[info] Running Start
[error] (run-main-1) java.lang.IllegalStateException: Application launch must not be called more than once
java.lang.IllegalStateException: Application launch must not be called more than once
at com.sun.javafx.application.LauncherImpl.launchApplication(Unknown Source)
at com.sun.javafx.application.LauncherImpl.launchApplication(Unknown Source)
at javafx.application.Application.launch(Unknown Source)
... etc.
Run Code Online (Sandbox Code Playgroud)
该应用程序已经过测试,如果我从jar中以gui形式运行它,一切正常,所以这是sbt的一个问题.
在我设置的Chrome控制台foo中null:
localStorage.setItem("foo",null)
Run Code Online (Sandbox Code Playgroud)
然后我测试,是否为null:
console.log(localStorage.getItem("foo")==null)
Run Code Online (Sandbox Code Playgroud)
打印false.
然后我测试,是否是字符串"null":
console.log(localStorage.getItem("foo")=="null")
Run Code Online (Sandbox Code Playgroud)
打印true.
我认为这null是一个合法的Javascript值."null"当我在浏览器中手动清除localStorage时,将其存储为字符串非常反直并且在其他工作程序中导致奇怪的错误.
d3.select('#le'+j.toString()).style("background-color", j==i?"#ffffaf":"#dfdfdf");
//$('#le'+j.toString()).style("background-color", j==i?"#ffffaf":"#dfdfdf");
Run Code Online (Sandbox Code Playgroud)
作品.
//d3.select('#le'+j.toString()).style("background-color", j==i?"#ffffaf":"#dfdfdf");
$('#le'+j.toString()).style("background-color", j==i?"#ffffaf":"#dfdfdf");
Run Code Online (Sandbox Code Playgroud)
不行.我收到以下错误: